{
 "cells": [
  {
   "cell_type": "code",
   "id": "initial_id",
   "metadata": {
    "collapsed": true,
    "ExecuteTime": {
     "end_time": "2024-09-19T13:28:47.456366Z",
     "start_time": "2024-09-19T13:28:47.452675Z"
    }
   },
   "source": [
    "import os \n",
    "os.getcwd()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'D:\\\\kaifaruanjian\\\\pyCharm\\\\pythonProobject\\\\shixunone\\\\longdan\\\\com\\\\bw\\\\shixun\\\\tianmao'"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 4
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:28:48.080558Z",
     "start_time": "2024-09-19T13:28:48.076446Z"
    }
   },
   "cell_type": "code",
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "from collections import Counter\n",
    "from datetime import datetime\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "from scipy import stats\n",
    "import gc\n",
    "import warnings\n",
    "\n",
    "\n",
    "from pylab import mpl\n",
    "# 设置显示中文字体\n",
    "mpl.rcParams[\"font.sans-serif\"] = [\"SimHei\"]\n",
    "\n",
    "# 设置正常显示符号\n",
    "mpl.rcParams[\"axes.unicode_minus\"] = False\n",
    "warnings.filterwarnings('ignore')"
   ],
   "id": "64a41914a4ecbc2a",
   "outputs": [],
   "execution_count": 5
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:05.942538Z",
     "start_time": "2024-09-19T13:28:48.110439Z"
    }
   },
   "cell_type": "code",
   "source": [
    "test_data = pd.read_csv('../../../../data_format1/test_format1.csv')\n",
    "train_data = pd.read_csv('../../../../data_format1/train_format1.csv')\n",
    "\n",
    "user_info = pd.read_csv('../../../../data_format1/user_info_format1.csv')\n",
    "user_log = pd.read_csv('../../../../data_format1/user_log_format1.csv')"
   ],
   "id": "beb35eba6d6a74cf",
   "outputs": [],
   "execution_count": 6
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:05.951016Z",
     "start_time": "2024-09-19T13:29:05.943514Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# reduce memory\n",
    "def reduce_mem_usage(df, verbose=True):\n",
    "    start_mem = df.memory_usage().sum() / 1024**2\n",
    "    numerics = ['int16', 'int32', 'int64', 'float16', 'float32', 'float64']\n",
    "\n",
    "    for col in df.columns:\n",
    "        col_type = df[col].dtypes\n",
    "        if col_type in numerics:\n",
    "            c_min = df[col].min()\n",
    "            c_max = df[col].max()\n",
    "            if str(col_type)[:3] == 'int':\n",
    "                if c_min > np.iinfo(np.int8).min and c_max < np.iinfo(np.int8).max:\n",
    "                    df[col] = df[col].astype(np.int8)\n",
    "                elif c_min > np.iinfo(np.int16).min and c_max < np.iinfo(np.int16).max:\n",
    "                    df[col] = df[col].astype(np.int16)\n",
    "                elif c_min > np.iinfo(np.int32).min and c_max < np.iinfo(np.int32).max:\n",
    "                    df[col] = df[col].astype(np.int32)\n",
    "                elif c_min > np.iinfo(np.int64).min and c_max < np.iinfo(np.int64).max:\n",
    "                    df[col] = df[col].astype(np.int64)\n",
    "            else:\n",
    "                if c_min > np.finfo(np.float16).min and c_max < np.finfo(np.float16).max:\n",
    "                    df[col] = df[col].astype(np.float16)\n",
    "                elif c_min > np.finfo(np.float32).min and c_max < np.finfo(np.float32).max:\n",
    "                    df[col] = df[col].astype(np.float32)\n",
    "                else:\n",
    "                    df[col] = df[col].astype(np.float64)\n",
    "               \n",
    "    end_mem = df.memory_usage().sum() / 1024**2\n",
    "    print('Memory usage after optimization is: {:.2f} MB'.format(end_mem))\n",
    "    print('Decreased by {:.1f}%'.format(100 * (start_mem - end_mem) / start_mem))\n",
    "    return df"
   ],
   "id": "20c776faef8220fa",
   "outputs": [],
   "execution_count": 7
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.851151Z",
     "start_time": "2024-09-19T13:29:05.951531Z"
    }
   },
   "cell_type": "code",
   "source": [
    "train_data = reduce_mem_usage(train_data)\n",
    "test_data = reduce_mem_usage(test_data)\n",
    "\n",
    "user_info = reduce_mem_usage(user_info)\n",
    "user_log = reduce_mem_usage(user_log)"
   ],
   "id": "7d2f5e628b8a32ef",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Memory usage after optimization is: 1.74 MB\n",
      "Decreased by 70.8%\n",
      "Memory usage after optimization is: 3.49 MB\n",
      "Decreased by 41.7%\n",
      "Memory usage after optimization is: 3.24 MB\n",
      "Decreased by 66.7%\n",
      "Memory usage after optimization is: 890.48 MB\n",
      "Decreased by 69.6%\n"
     ]
    }
   ],
   "execution_count": 8
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.861130Z",
     "start_time": "2024-09-19T13:29:08.852215Z"
    }
   },
   "cell_type": "code",
   "source": "train_data.head()",
   "id": "4d0c7fdc4b515da4",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label\n",
       "0    34176         3906      0\n",
       "1    34176          121      0\n",
       "2    34176         4356      1\n",
       "3    34176         2217      0\n",
       "4   230784         4818      0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 9
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.867456Z",
     "start_time": "2024-09-19T13:29:08.862113Z"
    }
   },
   "cell_type": "code",
   "source": "test_data.head()",
   "id": "1f63e2a9bef1a160",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  prob\n",
       "0   163968         4605   NaN\n",
       "1   360576         1581   NaN\n",
       "2    98688         1964   NaN\n",
       "3    98688         3645   NaN\n",
       "4   295296         3361   NaN"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>prob</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>163968</td>\n",
       "      <td>4605</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>360576</td>\n",
       "      <td>1581</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>98688</td>\n",
       "      <td>1964</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>98688</td>\n",
       "      <td>3645</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>295296</td>\n",
       "      <td>3361</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 10
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.882249Z",
     "start_time": "2024-09-19T13:29:08.868441Z"
    }
   },
   "cell_type": "code",
   "source": "user_info.head()",
   "id": "fc6bd45d093a95c5",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  age_range  gender\n",
       "0   376517        6.0     1.0\n",
       "1   234512        5.0     0.0\n",
       "2   344532        5.0     0.0\n",
       "3   186135        5.0     0.0\n",
       "4    30230        5.0     0.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>376517</td>\n",
       "      <td>6.0</td>\n",
       "      <td>1.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>234512</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>344532</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>186135</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>30230</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 11
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.890190Z",
     "start_time": "2024-09-19T13:29:08.883242Z"
    }
   },
   "cell_type": "code",
   "source": "user_log.head()",
   "id": "28d672e8d1eecb96",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  item_id  cat_id  seller_id  brand_id  time_stamp  action_type\n",
       "0   328862   323294     833       2882    2660.0         829            0\n",
       "1   328862   844400    1271       2882    2660.0         829            0\n",
       "2   328862   575153    1271       2882    2660.0         829            0\n",
       "3   328862   996875    1271       2882    2660.0         829            0\n",
       "4   328862  1086186    1271       1253    1049.0         829            0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>item_id</th>\n",
       "      <th>cat_id</th>\n",
       "      <th>seller_id</th>\n",
       "      <th>brand_id</th>\n",
       "      <th>time_stamp</th>\n",
       "      <th>action_type</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>328862</td>\n",
       "      <td>323294</td>\n",
       "      <td>833</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>328862</td>\n",
       "      <td>844400</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>328862</td>\n",
       "      <td>575153</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>328862</td>\n",
       "      <td>996875</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>328862</td>\n",
       "      <td>1086186</td>\n",
       "      <td>1271</td>\n",
       "      <td>1253</td>\n",
       "      <td>1049.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 12
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "缺失值查看",
   "id": "b06354e7798b3a4a"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.896761Z",
     "start_time": "2024-09-19T13:29:08.891172Z"
    }
   },
   "cell_type": "code",
   "source": "train_data.isna().sum()",
   "id": "e46277a4385f356d",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id        0\n",
       "merchant_id    0\n",
       "label          0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 13
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.902541Z",
     "start_time": "2024-09-19T13:29:08.897747Z"
    }
   },
   "cell_type": "code",
   "source": "test_data.isna().sum()",
   "id": "236434c1250d1c18",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id             0\n",
       "merchant_id         0\n",
       "prob           261477\n",
       "dtype: int64"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 14
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:08.910516Z",
     "start_time": "2024-09-19T13:29:08.903529Z"
    }
   },
   "cell_type": "code",
   "source": "user_info.isna().sum()/user_info.shape[0]",
   "id": "434cd54ff4fe50e0",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id      0.000000\n",
       "age_range    0.005227\n",
       "gender       0.015173\n",
       "dtype: float64"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 15
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:09.315875Z",
     "start_time": "2024-09-19T13:29:08.911507Z"
    }
   },
   "cell_type": "code",
   "source": "user_log.isna().sum()/user_log.shape[0]",
   "id": "9a7555de1de1666f",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id        0.000000\n",
       "item_id        0.000000\n",
       "cat_id         0.000000\n",
       "seller_id      0.000000\n",
       "brand_id       0.001657\n",
       "time_stamp     0.000000\n",
       "action_type    0.000000\n",
       "dtype: float64"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 16
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "重复值查看",
   "id": "16ff4602786319c"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:09.339303Z",
     "start_time": "2024-09-19T13:29:09.316853Z"
    }
   },
   "cell_type": "code",
   "source": "train_data.duplicated().sum()",
   "id": "c3d5d4be51ca5396",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 17
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:09.365883Z",
     "start_time": "2024-09-19T13:29:09.340292Z"
    }
   },
   "cell_type": "code",
   "source": "test_data.duplicated().sum()",
   "id": "6f5b3ac88dad610b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 18
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:09.412874Z",
     "start_time": "2024-09-19T13:29:09.368862Z"
    }
   },
   "cell_type": "code",
   "source": "user_info.duplicated().sum()",
   "id": "5091f8b2f5446bdf",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 19
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:25.405965Z",
     "start_time": "2024-09-19T13:29:09.413865Z"
    }
   },
   "cell_type": "code",
   "source": "user_log.duplicated().sum()",
   "id": "213f17e7134c0f37",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "13750198"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 20
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "可视化数据\n",
   "id": "ddc4c7c89ffb9c4c"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:26.113548Z",
     "start_time": "2024-09-19T13:29:25.406937Z"
    }
   },
   "cell_type": "code",
   "source": [
    "#正负样本比例分布\n",
    "label_gp = train_data.groupby('label')['user_id'].count()\n",
    "print('正负样本的数量：\\n',label_gp)\n",
    "_,axe = plt.subplots(1,2,figsize=(12,6))\n",
    "train_data.label.value_counts().plot(kind='pie',autopct='%1.1f%%',shadow=True,explode=[0,0.1],ax=axe[0])\n",
    "sns.countplot(x='label',data=train_data,ax=axe[1],)"
   ],
   "id": "3cf55d4fc1bb550d",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "正负样本的数量：\n",
      " label\n",
      "0    244912\n",
      "1     15952\n",
      "Name: user_id, dtype: int64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='label', ylabel='count'>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 1200x600 with 2 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 21
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:26.382629Z",
     "start_time": "2024-09-19T13:29:26.114529Z"
    }
   },
   "cell_type": "code",
   "source": [
    "#购买次数前5的店铺\n",
    "print('选取top5店铺\\n店铺\\t购买次数')\n",
    "print(train_data.merchant_id.value_counts().head(5))\n",
    "train_data_merchant = train_data.copy()\n",
    "train_data_merchant['TOP5'] = train_data_merchant['merchant_id'].map(lambda x: 1 if x in [4044,3828,4173,1102,4976] else 0)\n",
    "train_data_merchant = train_data_merchant[train_data_merchant['TOP5']==1]\n",
    "plt.figure(figsize=(8,6))\n",
    "plt.title('Merchant VS Label')\n",
    "ax = sns.countplot(x = 'merchant_id',hue='label',data=train_data_merchant)\n",
    "for p in ax.patches:\n",
    "    height = p.get_height()"
   ],
   "id": "3b923689ed8b5ea7",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "选取top5店铺\n",
      "店铺\t购买次数\n",
      "4044    3379\n",
      "3828    3254\n",
      "4173    2542\n",
      "1102    2483\n",
      "4976    1925\n",
      "Name: merchant_id, dtype: int64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 800x600 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIdCAYAAAAnGlX/AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA9hklEQVR4nO3deXxU1f3/8ffMZCEECCAawLAKjIAhssSFpWyptqCshboUxQo1qPVRE0uJAgJBIVQpbuA3KlqLFlli3EBZvlbUIlKsGK1J6BiBIJsGAgmECZP5/cGP+TpCQmayzOTM6/l45PFg7rnn3s/NYSbv3Jx7r8XtdrsFAAAAGMAa6AIAAACA2kK4BQAAgDEItwAAADAG4RYAAADGINwCAADAGIRbAAAAGINwCwAAAGMQbgEAAGAMwi0AAACMQbgF0GBlZWXJbrcrOTnZs+yFF16Q3W7XjBkz6q2OSZMm6amnnqq3/fnjtttu05gxY85ZPmnSJI0bN87zeuvWrRo3bpx69eql66+/Xu+++26191FYWCi73a5Nmzb5XedTTz2lG264we/+P7Zt2zbZ7fZa2RaAhoNwC6DBy8vLO++/TfTUU0+psLDQ534DBw5UXl6eiouLPcucTqd27typAQMGSDrzvZs6daqGDBmi5557TgkJCUpNTdWePXtqrX4AqGuEWwAN3nfffadjx45JknJzcwNcTd16+umntW/fPp/7DRgwQBUVFdq+fbtn2eeff65Tp06pf//+ks6cCe/UqZPuu+8+XX311Zo/f76io6P15ptv1lr9AFDXCLcAGrRLL71UF198sfLy8lReXq5vvvlGCQkJgS4r6PTo0UMtW7bUp59+6ln26aefKioqSn379pUkHTlyRMePH9fp06clSREREXr++ec1cuTIgNQMAP4g3AJo8Ox2u/Ly8uRwOGSxWNShQwev9nXr1umGG25Qr169NGbMGG3dutWrfcaMGZoxY4YOHjyo1NRUXX311V5/inc6nVqwYIGuueYa9evXT3fdddd5/1S/Zs0aDRs2TH369FFqaqpOnTrlacvJydGtt96q3r17a9CgQXrsscfkdrsl/d9c1by8PE2fPl19+vTRz372M73++uuS/m/u6Nn5o7fddpvsdruGDRtW7e+RxWLRtdde63Xmdvv27erXr58iIiIkSYMHD9b+/ft11113adeuXZKkXr16qVOnTtXeT3W8+eabGjFihBISEvSLX/xCb7/99jnrPP3000pMTNTVV1+tJ554wvO9kqSTJ09q/vz5uvbaa5WYmKg//OEPKioqqtUaATRchFsADV63bt2Um5urvLw8denSRTabzdO2detWpaSk6Prrr9cLL7yghIQETZ06VQ6Hw2sbR48e1c033yyLxaLf//73atGihadt+vTpys7O1h//+Ec9+eSTOn78uKZMmaLy8nLPOps2bdJzzz2ntLQ0paWl6d1339Xq1aslSaWlpZoyZYoaNWqkzMxMTZ8+Xa+88oreeOMNrxqmT58ui8WiZ555Rv369dPs2bNVVFSknj17as2aNVqzZo0kae7cuVqzZo2WLVvm0/dpwIABys3N1bFjx+R0OvX555975ttK0siRI5WSkqJt27bpxhtvVEpKig4cOODTPi5kx44dmj59ugYPHqwXXnhBN954o/70pz9p7969nnUKCgr0/vvva/HixZoyZYr+53/+RytXrvS0P/zww9q0aZMefvhhPfbYY9q1a5fuvffeWq0TQMMVFugCAKCmunXrpldffVVNmzY95+r4pUuXatiwYfr9738vSerbt6/ee+89vfPOO7rvvvs8673//vuaMWOG7rjjDq/+BQUFWr9+vTIyMjx3G2jZsqWWLl2qH374Qa1bt5Ykffvtt3rvvfc8rzdu3OiZ/3vixAn94Q9/0LBhwxQbGyun06mXX35Zn3/+udcdDNq0aaOMjAxJZ85Gv/POOyooKFDfvn0VHx/vWa9Tp05er6vrx/NuY2JiVFZW5hVuJemuu+7S6NGjlZmZqVWrVunTTz/VihUr1LFjR5/3dz6NGjXSvHnzNH78eNlsNnXq1EnLli1TTk6O2rVrJ0lyuVxavHixOnTooEGDBik3N1d//etfdfPNN2vv3r1688039fTTTyspKcmz/rRp07R3717PNgCELsItgAavW7du2rVrl5o0aaJBgwYpPz/f05afn6+jR4+eE3p3797t9bpLly66/fbbz9n2119/LUnq16+fZ9nll1+uJ5980mu9pKQkT7CVzgTgs3NXL774Yg0cOFCrV6/Wv/71L+Xk5Ki0tFSXXXaZ1zZ+85vfePWX5NlGbWjdurUuu+wyffrpp2revLkuvvhidevW7bzrzZ49W6NGjdIdd9yhhQsX6tlnn62VGnr27KmysjJlZGTos88+U25urk6fPq2ysjLPOrGxsV5TS3r16qX33ntPLpdLu3btktvt1j333HPOtnfv3k24BUC4BdDwdenSRU6nU//85z915513eoVbSbrllls0ceJEr2VNmzb1eh0fHy+rtfKZWhaLxfNvt9utHTt2qEOHDrr44oslqcpQ9dVXX+mWW27R1Vdfreuuu06pqalasWLFOeu1b9++8oOsJQMGDPCE27N3SThr3LhxXvfDvfLKKzV27Nga3bf2p1555RUtWLBA48aN06RJk9SnT59zfqn46TjYbDa53W6vebfPP/+8WrVq5bUewRaAxJxbAAaIjIz0BMOfnqHt2rWrDh8+rO7du3u+Nm3apA8++KBa2+7evbskeV2IVVhYqFtvvVU5OTmeZT+e5/tTb7zxhlq2bKnMzEzdcsstuuKKK845cyydG+rOJyIiwussp6/Ozrvdvn37OVMSSkpKtG3bNq9lR48eVdu2bf3e30+tXr1aI0aM0Lx58zR69GhFR0fr6NGjXuscOHBA3333nef1l19+qbZt2yosLExdu3aVdOYiv7PjedFFF+mFF17w6xZpAMzDmVsARujWrZuOHj3qOZN61j333KM77rhDf/nLXzRw4EB99tlneuaZZ/TEE09Ua7udOnXSL37xCy1cuFAVFRVq3bq1li1bpvbt2+uaa66p1jZatGih77//XuvWrVN0dLT+9re/6d///rfi4uJ8Ps6EhAStXr1a0dHROnDggNq0aeO5lVd1XHXVVbLZbCovLz/nzO1NN92kxx57TB06dFDfvn312Wef6d1339Wf//xnn2rMzc1V48aNvZa1bt1anTt3VosWLbRz505t3bpVhw8f1tKlS1VaWiqXy+W1fkpKin7/+98rPz9fb7/9th544AFJZ87Ojh49WvPmzVNpaakuueQSZWZmateuXZozZ45PdQIwE+EWgBHOhtufuvbaa7V48WItXbpUy5cvV1xcnB599FFdf/311d72okWLtHjxYi1atEgul0uJiYl69NFHzwlwlbn99tu1a9cuzZw5U02bNtXgwYN10003aevWrT7PqU1PT9dDDz2kO+64Q02aNNHChQt96t+4cWP17t37vL8ITJ48WRaLRStXrtSzzz6rdu3a6ZFHHvH5PrfnexTxrbfeqtmzZ2vmzJmaNWuWpk2bptatW2vChAlat26dduzYoQkTJkiSLrvsMvXt21f33XefoqOjlZycrNtuu82zrblz5+rxxx/XggULVFZWpr59++qll15SkyZNfKoTgJks7h9PYgIAAAAaMObcAgAAwBiEWwAAABiDcAsAAABjEG4BAABgDMItAAAAjEG4BQAAgDFC/j63FRUVOn36tKxWq9fjNQEAABAc3G63KioqFBYWdsGnOYZ8uD19+rTXIzQBAAAQnOLj4xUREVHlOiEfbs+m//j4+CqfDQ8AAIDAcLlcysnJueBZW4lw65mKYLPZCLcAAABBrDpTSLmgDAAAAMYg3AIAAMAYhFsAAAAYI+Tn3AIAADQUbrdbp0+flsvlCnQptS48PLxWrn8i3AIAADQATqdT+/fv14kTJwJdSp2wWCyKi4tTkyZNarQdwi0AAECQq6ioUEFBgWw2m9q2bauIiAijHj7ldrt1+PBhFRYWqmvXrjU6g0u4BQAACHJOp1MVFRVq166dGjduHOhy6sTFF1+sb7/9VuXl5TUKt1xQBgAA0EBU5yEGDVVtnYk29zsEAACAkEO4BQAAgDEItwAAAAYrLCyU3W6v1rpZWVmaNGmS3/vatm2bhg0b5nf/2kC4BQAAgDEItwAAADAG4RYAACDE/Otf/9Lo0aOVkJCg8ePHKz8/39NWXl6ue++9V71799bUqVP1ww8/eNq++OILTZgwQX379tW9996r48ePB6L8KhFuAQAAQkhFRYXuu+8+/eIXv9CmTZvUu3dvLVq0yNP+73//W927d9ebb74pq9WqefPmSZKOHTumqVOnavDgwXrrrbd08uRJLVy4MFCHUSke4gAAABBi3njjDTVt2lR5eXkqLS3Vt99+62m7+OKLNW3aNFmtVt1777266aab5HK59P777ys8PFz33HOPLBaLJk+erOnTpwfuICpBuAUAAAghVqtVL774otasWaO4uDhdeumlqqio8LRfeumlnodFtG3bVqdPn9aRI0d08OBBFRUVKTExUdKZM8ClpaU6deqUIiMjA3Is50O4BQAACCHbtm3T3//+d23cuFGtWrXSBx98oK+++srTfuDAAbndblksFh08eFA2m03NmzdX69atdcUVV2jx4sWSJLfbrZKSEoWFBVecZM4tAABACDlx4oQk6fjx49qxY4cWLFggt9vtaT9w4ICef/55FRYW6plnntGQIUMUFhamIUOG6LvvvtMXX3wh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oPgVbnNzcz3/LisrU05Ojp5++mndfffdtVYYAAAA4Cu/7pbwY40aNVJiYqKWLVumjIyM2qgJAAAA8EuNw+1ZP/zwgw4dOlRbmwMAAAB8VqM5t2dVVFTo8OHDuu2222qtMAAAAMBXtXIrMIvFotatW6tdu3a1UhQAAADgD7+mJVx11VW66qqr1KhRIx05ckSRkZEEWwAAAAScX2duDx48qGnTpmn37t265JJLdOjQIXXs2FFLly5VbGxsbdcIAAAAVItfZ25nz56tK664Qlu3btX69ev1z3/+Uz179tSsWbNquz4AAACg2vwKtzt27NC0adMUEREhSYqMjFRycrI+++yzWi0OAAAA8IVf4bZbt256/fXXvZa9/vrr6tq1a60UBQAAAPjDrzm3c+bM0Z133qm33npLcXFx2rt3r0pLS7V8+fLarg8AAACoNr/Cbbdu3fTee+/p/fff1/79+zV27FgNGTJEjRs3ru36AAAAgGrza1rCf//7X916662yWq2aMmWKli1bpokTJ6qgoKC26wMAAACqze+7JVxzzTUaOHCgJOm1117TkCFD9PDDD9dqcQAAAIAv/Aq3X3/9te644w41bdpUktS4cWNNmjRJX331Va0WBwAAAPjCr3Brt9v1xhtveC174403uFsCAAAAAsqvC8pmz56tqVOnKjs7W5deeqkKCwt17NgxPf/887VdHwAAAFBtfoXbHj166L333tM//vEPHThwQKNHj9bgwYPVpEmT2q4PAAAAqDa/piVIUpMmTXTDDTdoypQpGjlypM/B9siRIxo2bJgKCws9y9LT02W32z1fP//5zz1t+fn5Gj9+vBITE5WRkSG3212tNgAAAIQOv8NtTRQVFSk5OVn79u3zWv7VV18pMzNT27dv1/bt2z1PQXM6nUpOTlbPnj21du1aORwOZWVlXbANAAAAocWvaQk1lZKSohEjRujzzz/3LDt9+rTy8/PVr18/RUdHe62/ZcsWlZSUKC0tTVFRUUpJSdHcuXM1fvz4Ktt84XK5fFrfZrP5tH6w8vW4QxXjHVoY79DCeIcWxrth8uV4AxJu09PT1a5dOz366KOeZXl5eXK73RozZowOHjyoxMREpaenq23btsrNzVVCQoKioqIknblbg8PhkKQq23yRk5NT7XWjoqLUo0cPn/cRjPLy8nTy5MlAlxHUGO/QwniHFsY7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6ikuLnZfffXV7ry8PLfb7Xa//vrr7iFDhrh3797tHjx4sPvLL79079u3z52Wlub+zW9+43a73e7du3e7ExMT3e+884778OHD7vvuu8/961//2tNWWT8El9/+9rfutWvXut3uqt/DlfXxpQ2B9cYbb7i7devmGZ8ffvjBPXHiRHe3bt28Ps9PnTrlLi4u9nzt37/fffXVV7v37NlT6WcFgs+Px/vjjz92X3nlle6PPvrIXVhY6J46dar75ptvdrvdVY/3WXl5ee7evXu7d+/eHajDCSjO3BqiqKhIycnJ2rdvX7WWO51OJScnq2fPnlq7dq0cDofnt749e/bowQcfVGpqqrZs2aK2bdvqoYceqrdjwYWVlpbqwQcfVLdu3SRJl19+uYqLi/Wf//xHCQkJ6tmzp9q2batx48apoKBAkuRwOHT//fdrxIgRatWqlW6++WZ9+eWXklRlPwSPN998Ux999JGkqt/DlfXxpQ2BdfToUWVkZKhTp06eZSkpKRoxYsQ560ZERKhZs2aer+zsbF133XVq165dpZ8VCC4/He/s7GxNmDBBAwYM0KWXXqrp06drx44dOnLkSJXjLZ15TO3s2bN1++23q3379oE8rIAh3Bqisg+9ypZv2bJFJSUlSktLU/v27ZWSkqI1a9ZIqjoEITi0adNGo0aNkiSVl5dr+fLluu6669SlSxd98skn+s9//qPjx4/r1Vdf1YABAyRJQ4cO1c033+zZRkFBgTp06CBJVfZDcPjpD7+q3sOV9aluGwIvIyNDSUlJuvLKKz3L0tPTdfvtt1fZ79SpU3r55Zf1u9/9TlLlnxUILj8d7yNHjqht27aedqv1TFwLCwvz6vfT8ZakVatWKTc3V3FxcXr//fdVXl5e9wcQZMIuvAoagvT0dLVr106PPvpotZbn5uYqISFBUVFRkiS73e6Zfzl06FCvdX8cghBccnNzddtttyk8PFzr169Xs2bNdP3112vs2LGSpLi4OK1evfqcfk6nU8uXL9fkyZMlnQm31emHwDn7w+/UqVOSqn4PV9anum0IrE8++URbt27V22+/rfnz53uWnz0zV5W33npLCQkJiouL81r+088KBI/zjXf37t21efNm3X777bJYLMrKylKvXr3UtGlTr74/He/S0lItWbJEHTp00IEDB/TGG2/o2Wef1csvv6zIyMh6P7ZA4cyt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VFRUpMTERElSRUWFSktLderUKc86N910k8LDw722deDAAV166aWe161bt1br1q09ry+77DK1atVKkrz6ut1uPf7449q4caO6dOmiJk2aqKKi4oL96sKhQ4e8am7Xrl2d7g8AfoxwCwB1wOVy6YorrtDixYslnQmfJSUlCgv7v4/dqKioc/q1adNGn376qed1QUGB7r//fmVlZUlSpRdvvf322/r000/1wQcfKDo6Wq+88orXfNwLXfRlsVjkdrurf4BVuOiii5SXl+d5ffYsMQDUB6YlAEAdGDx4sL777jt98cUXstlsWrdunaZMmXLBADly5Ejt2LFDWVlZ2r9/v5YtW6aLLrpIVmvVH9cnTpyQJBUXF+uDDz7QsmXLfAqrHTp00IcffqhDhw5p69at1e53PsOHD9dHH32kDz74QLt27dILL7xQo+0BgC8ItwBQB5o1a6alS5fqxRdf1C9/+Utt3LhRy5Yt8zpzez5xcXGefiNHjtSxY8f06KOPXnB/Y8aMUceOHTVixAg988wz+vWvf61vvvlGp06dqla906dP14cffqjhw4fr6aefrlafylxxxRWaMWOGZs6cqd/97ncaNGhQjbYHAL6wuGvr71AAAABAgDHnFgBwju+++06jRo06b1v//v315JNP1nNFAFA9nLkFAJzj9OnT5zw84qxGjRp57rwAAMGGcAsAAABjcEEZAAAAjEG4BQAAgDEItwAAADAG4RYAAADGINwCAADAGIRbAAAAGINwCwAAAGP8P5o/QiCFvTpYAAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 22
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:26.464824Z",
     "start_time": "2024-09-19T13:29:26.383616Z"
    }
   },
   "cell_type": "code",
   "source": "train_data_user_info = train_data.merge(user_info,on=['user_id'],how='left')",
   "id": "5f5a4137297161b6",
   "outputs": [],
   "execution_count": 23
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:27.113388Z",
     "start_time": "2024-09-19T13:29:26.465841Z"
    }
   },
   "cell_type": "code",
   "source": [
    "plt.figure(figsize=(8,8))\n",
    "plt.title('Gender VS Label')\n",
    "ax = sns.countplot(x = 'gender',hue='label',data=train_data_user_info)\n",
    "for p in ax.patches:\n",
    "    height = p.get_height()"
   ],
   "id": "2b72f7b78a413010",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 800x800 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsUAAAK3CAYAAABtITLSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA8+0lEQVR4nO39f5hVdaH3/79mNj8cpIZIwxSwH8p4wBHkdtTUOoqWHo/elaTH6pj2LU9o5THoLjEzCi8FzzlqpdbhNssiNRNC6a5Tat7RD83MNCoB70nT8QfqAQkmYHCzP390Od8mfzE6wx54Px7X1XWx13uttd9772vRk+XaezXUarVaAACgYI31ngAAANSbKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAZ4Ad/+9rczZcqU7LPPPjn11FOzcuXKfn2+X/ziF2lpaenX5/hrM2fOzAEHHJC/vbnpWWedlQMPPLB7+b333pt//ud/zqRJk3LYYYflm9/8Zq+ep6WlJV/72tde8jwXLlyYfffd9yVv/9c6OjrS0tKSjo6OPtkfsH0QxQDP46abbso555yT448/PpdffnmeeOKJfPzjH6/3tPrUIYcckqeeeirLly/vsfyOO+7IQQcdlIaGhjz++OM55ZRT8oY3vCH/+Z//maOOOiqf+9zn8stf/rJOswboe4PqPQGAgeqLX/xiDjnkkJx22mlJksGDB+d973tfli1blr322qvOs+sbb3rTm9LQ0JBf/OIX3a/pkUceycMPP5zTTz89SfJf//VfqVarmTVrVhobG3PAAQfkJz/5SRYuXJi2trZ6Th+gzzhTDPAcVq5cmeXLl+eQQw7pXjZ+/PgkyX333VevafW5kSNHZvz48bnjjju6lz3z54MPPjhJsnr16nR1daWzs7N7nf/4j//IySefvHUnC9CPRDHAc/jDH/6QJNltt926l73iFa/I4sWL8+Y3v7l72fe+970cc8wx2WefffKOd7wjt912W/fYF7/4xZx00kn59a9/neOOOy4TJ07MiSeemIceeqh7nQceeCAnnXRSWltbc+yxx+bee+/tMY9qtZovfvGLectb3pJ99903H/jAB3psnyRTpkzJwoULc9ddd+V973tfjjrqqF691oMPPjh33nln9/XDd9xxR97whjfkta99bZLkLW95S7q6unLKKafk17/+dZK/XCPc12fLf/KTn3S/T1OmTHnOa5Cvu+66HHzwwZk8eXJmzZqVrq6u7rEtea8Ano8oBngOq1atSpIMHz68x/Jx48ZlxIgRSZLbbrst06dPz5FHHpmvfOUrmThxYk499dS0t7d3r//II4/kox/9aKZOnZrPf/7zefTRR/Nv//ZvSf4ScR/+8Ifz1FNP5dJLL80//dM/5ZJLLunxfJdeemmuuuqqfOxjH8vll1+e9evX55RTTsnTTz/dY7277747p512WiZMmJB/+Zd/6dVrPfjgg3tcV3zHHXd0nyVOkn333Tfnn39+/vCHP+TEE0/MBz7wgR6vsS889NBDOf300/PGN74xX/nKV3Lqqadm7ty5ufPOO7vX2bBhQ6644orMnj07n/zkJ7No0aJ84Qtf6B7f0vcK4DnVAHiW73znO7Vx48bVfv7zn9dqtVrtyCOPrI0bN642bty42oIFC2q1Wq32z//8z7XTTjute5tqtVo74IADap///OdrtVqt9oUvfKE2bty42g9+8IPudf73//7ftbe+9a21Wq1W+/GPf1wbN25c7Z577ukeP//882vjxo2r1Wq12oYNG2qtra21r371q93jy5Ytq40bN6522223dS877LDDahMmTKj9+te/fkmvdePGjbVJkybVrrrqqtqjjz5aGzduXO1HP/rRs9ZbvXp17eKLL65NmjSptu+++9buuuuuLX6OcePG9Xgdf+v++++vXX311bW1a9fWarVabd26dbW3vOUttXnz5tVqtVptwYIFPT6PWq1Wu+iii2oTJ06sVavVLX6varVa7aGHHqqNGzeu9tBDD23x/IHtny/aATyHHXfcMUmyfv36JMlll12Wrq6unHrqqd3rrFixIk899dSzfkLtj3/8Y/efd95557ztbW/rfjxy5MjuM5cPPPBABg0alL333rt7vK2trfuygQceeCAbN27MBRdckAsuuOBZz3HggQd2P546dWomTZr0kl7rkCFDst9+++WOO+7IiBEjMnjw4Oy///7PWm/EiBE588wz8/a3vz0nnXRSzj333CxevPglPeffet3rXpeNGzdm3rx5ufPOO/O73/0uGzduzIYNG7rXaWhoyH777df9uLW1NevXr8/KlSvzpz/9aYvfK4DnIooBnsOYMWOSpPu3bN/4xjcmSTZt2tRjvfe85z054YQT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8rvf/a7PJwcAAFtDr6O4paUlN9xwQ49lN9xwg1+fAABgm9XrL9qde+65OfXUU7No0aLstttu6ejoyJ/+9KdcccUV/TE/AADod72O4vHjx+cHP/hB/u///b957LHH8va3vz1///d/n+HDh/fH/AAAoN/1OoqTZPjw4TnmmGP6ei4AAFAXvb6muL8tWrQohx56aPbdd9+ccsop6ejoSJKsWLEiU6dOTVtbW+bOnZtarda9TX+MAQBQjgEVxQ8++GAuueSSXHbZZfk//+f/ZNddd83MmTPT1dWVadOmZcKECVmwYEHa29uzcOHCJOmXMQAAyvKSLp/oL7///e8zceLETJgwIUly3HHH5cwzz8ySJUuybt26zJw5M01NTZk+fXo++9nPZurUqf0y1hvVarVP34NKpdKn+ytdX38+AMC2ozcdMKCieI899sjtt9+e3//+9xkzZkyuvvrqHHzwwVm2bFkmTpyYpqamJH/5Wbj29vYk6Zex3li6dOnLe9F/pampKePHj++z/ZEsX74869evr/c0AIABbsBF8ZFHHpl3vvOdSZLRo0fn29/+dubNm5fRo0d3r9fQ0JDGxsasWbMm69at6/Ox5ubmLZ5za2urs7sDWEtLS72nAADUSbVa3eITmAMqiu++++7ceuut+fa3v503vvGNmTdvXk499dQceOCBGTJkSI91hw4dmg0bNqRSqfT5WG+iuFKpiOIBzGcDAGyJAfVFu+9973v5x3/8x+yzzz7Zcccdc+aZZ6ajoyPNzc1ZtWpVj3U7OzszePDgfhkDAKAsAyqKq9Vqnnzyye7HnZ2d+fOf/5xBgwblnnvu6V7e0dGRrq6uNDc3p7W1tc/HAAAoy4CK4smTJ+emm27K1772tSxevDinn356dtppp5x00klZu3ZtFi1alCSZN29eDjrooFQqlbS1tfX5GAAAZWmoDaA7VtRqtVx22WVZsGBBnnjiiey5556ZPXt29t5779x8882ZMWNGdtxxx1Sr1cyfPz977rlnkvTL2IupVqu5++67M2nSpD4P6fde8t0se3jVi6/I89prt5H55pnuuggAJetNrw2oKH4xK1euzNKlSzN58uSMHDmy38deiCge2EQxANCbXhtQvz7xYkaNGpVRo0ZttTEAAMowoK4pBgCAehDFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMQAAxRPFAAAUTxQDAFA8UQwAQPFEMbBdqG7eXO8pbBe8j0CpBtV7AgB9odLYmHOu/knuf3xNvaeyzXr9a5pz3nveXO9pANSFKAa2G/c/vibLHl5V72kAsA1y+QQAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxRDEAAMUTxQAAFE8UAwBQPFEMAEDxBmwU//u//3umTZvW/XjFihWZOnVq2traMnfu3NRqtX4dAwCgHAMyilesWJGrr746Z599dpKkq6sr06ZNy4QJE7JgwYK0t7dn4cKF/TYGAEBZBtV7An+rVqvl3HPPzcknn5yxY8cmSZYsWZJ169Zl5syZaWpqyvTp0/PZz342U6dO7Zex3qhWq336+iuVSp/ur3R9/fkwcDl2+o7jBthe9ObvswEXxdddd12WLVuW448/PrfeemsOOeSQLFu2LBMnTkxTU1OSpKWlJe3t7UnSL2O9sXTp0pf3gv9KU1NTxo8f32f7I1m+fHnWr19f72nQzxw7fctxA5RoQEVxZ2dnLrnkkuy+++557LHHcsMNN+TLX/5y9t1334wePbp7vYaGhjQ2NmbNmjVZt25dn481Nzdv8ZxbW1udoRrAWlpa6j0F2OY4boDtRbVa3eITmAMqim+66aasX78+V111VUaMGJEPfehDOfbYY7NgwYIcd9xxPdYdOnRoNmzYkEqlkiFDhvTpWG+iuFKpiOIBzGcDvee4AUo0oL5o99hjj2WfffbJiBEjkiSDBg1KS0tLNm7cmFWrVvVYt7OzM4MHD05zc3OfjwEAUJYBFcW77LJLNm7c2GPZI488kk9+8pO55557upd1dHSkq6srzc3NaW1t7fMxAADKMqCi+NBDD017e3uuueaaPPbYY/n617+ee++9N4ccckjWrl2bRYsWJUnmzZuXgw46KJVKJW1tbX0+BgBAWQbUNcUjRozIFVdckTlz5mTOnDnZaaedcvHFF2f33XfP7NmzM2PGjFx44YWpVquZP39+kr9cYtHXYwAAlGVARXGSTJo0Kddee+2zlh9xxBH54Q9/mKVLl2by5MkZOXJkv44BAFCOARfFL2TUqFEZNWrUVhsDAKAMA+qaYgAAqAdRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFE8UAABRPFAMAUDxRDABA8UQxAADFG9BR/IEPfCALFy5MkqxYsSJTp05NW1tb5s6dm1qt1r1ef4wBAFCOARvFN954Y376058mSbq6ujJt2rRMmDAhCxYsSHt7e3cs98cYAABlGZBR/NRTT2Xu3Ll5/etfnyRZsmRJ1q1bl5kzZ2bs2LGZPn16rr/++n4bAwCgLIPqPYHnMnfu3BxxxBHZuHFjkmTZsmWZOHFimpqakiQtLS1pb2/vt7HeqFarL+OVPlulUunT/ZWurz8fBi7HTt9x3ADbi978fTbgovj222/Pbbfdlu9+97s577zzkiTr1q3L6NGju9dpaGhIY2Nj1qxZ0y9jzc3NWzzfpUuXvpyX20NTU1PGjx/fZ/sjWb58edavX1/vadDPHDt9y3EDlGhARfHGjRvzmc98JrNmzcrw4cO7l1cqlQwZMqTHukOHDs2GDRv6Zaw3Udza2uoM1QDW0tJS7ynANsdxA2wvqtXqFp/AHFBRfPnll2fvvffOoYce2mN5c3Nz7rvvvh7LOjs7M3jw4H4Z641KpSKKBzCfDfSe4wYo0YCK4sWLF2f16tXZb7/9kiQbNmzI97///ey22255+umnu9fr6OhIV1dXmpub09ra2uMLcn0xBgBAWQbUr09cffXVWbx4cRYtWpRFixZlypQpOeOMMzJ//vysXbs2ixYtSpLMmzcvBx10UCqVStra2vp8DACAsgyoM8W77LJLj8fDhg3Lq171qowcOTKzZ8/OjBkzcuGFF6ZarWb+/PlJkkGDBvX5GAAAZRlQUfy35syZ0/3nI444Ij/84Q+zdOnSTJ48OSNHjuzXMQAAyjGgo/hvjRo1KqNGjdpqYwAAlGFAXVMMAAD1IIoBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHiiGACA4oliAACKJ4oBACieKAYAoHgDLopvvvnmHH744Rk/fnyOP/74tLe3J0lWrFiRqVOnpq2tLXPnzk2tVuvepj/GAAAox4CK4gcffDBnn312ZsyYkSVLlmTXXXfNpz71qXR1dWXatGmZMGFCFixYkPb29ixcuDBJ+mUMAICyDKgobm9vz8c+9rEcffTR2WmnnfLud787v/3tb7NkyZKsW7cuM2fOzNixYzN9+vRcf/31SdIvYwAAlGVQvSfw1w477LAej++///7svvvuWbZsWSZOnJimpqYkSUtLS/dlFf0x1hvVavUlvNLnV6lU+nR/pevrz4eBy7HTdxw3wPaiN3+fDago/mtdXV258sorc8opp+Shhx7K6NGju8caGhrS2NiYNWvWZN26dX0+1tzcvMXzXLp06ct8pf9/TU1NGT9+fJ/tj2T58uVZv359vadBP3Ps9C3HDVCiARvFl1xySYYNG5YTTjghl1xySYYMGdJjfOjQodmwYUMqlUqfj/UmiltbW52hGsBaWlrqPQXY5jhugO1FtVrd4hOYAzKKf/azn+Xaa6/Nddddl8GDB6e5uTn33Xdfj3U6Ozv7baw3KpWKKB7AfDbQe44boEQD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vM29996bUaNG9es8YVvnuIG/eOihh/Lxj388s2bNyh577PGi6zt2tk2imG1OW1tb1q5dm0WLFiVJ5s2bl4MOOiiVSiXr1q3Lpk2bnrXNlClT8qtf/Sq33357nn766Vx55ZU55JBDtvLMYWBy3MDz27BhQz70oQ/liCOOyOGHH57Ozs50dnamVqs5drYzDbUtuesBDDA333xzZsyYkR133DHVajXz58/PnnvumSlTpuTss8/OEUcc8axtvvnNb+aCCy7I8OHDM2zYsFx33XXZaaed6jB7qK+Wlpbccsst3V8EctzA87v55pvz4Q9/+FnLb7nllrzvfe9z7GxHRDHbrJUrV2bp0qWZPHlyRo4cuUXb/PGPf0x7e3v233//DB8+vJ9nCNsHxw28NI6dbYsoBgCgeK4pBgCgeKIYAIDiiWIAAIonigEAKJ4oBgCgeKIYgOe1cOHCnHTSSfWeBkC/E8UAABRPFAMAUDxRDLCNW7ZsWY455pgccMABueCCC3LUUUflG9/4RpYsWZJjjz02++23Xz71qU+lq6srSfLFL34xZ511Vi699NLst99+Oeyww3LnnXd27++yyy7LgQcemLe+9a35/e9/3+O5Fi1alLe97W054IADctFFF+Wv7//U0tKS++67L+eee27233//rF27duu8AQB9QBQDbONmzZqVY489NldddVWuv/76XHDBBdl3331z+umn5+STT87ChQvzu9/9LldccUX3Nj/+8Y/z4IMP5jvf+U4mT56ciy++OElyyy235KqrrsoXv/jFzJ07N4sXL+7e5s4778w555yTs88+O9/4xjdyww035MYbb+wxl3POOSc77rhjLr300jQ1NW2dNwCgD4higG3cvffem7e97W3Za6+9sscee+Thhx/OkiVLMn78+LzrXe/K2LFjc+KJJ+ZHP/pR9zaVSiWzZ8/OmDFj8s53vjOPPvpokuTmm2/Osccem7a2tkyePDnvete7urf5zne+k7e+9a059NBDM27cuPzP//k/e+wz+cvZ4k9+8pPZf//9M2jQoK3zBgD0AX9jAWzjxo4dm7vvvjuvetWr8sADD2SPPfbIL3/5y/z+97/PfvvtlySpVqsZNmxY9zaTJk3K0KFDkySDBw/uXv7444/nwAMP7H48ZsyY/OY3v0mSrFy5Mr/4xS+697lp06a0tLT0mItfqgC2VaIYYBu355575rzzzsunP/3pvPe9781ee+2VXXbZJVOmTMknPvGJJMnmzZuzfv367m2GDx/+nPt69atfnccff7z78TNnkJNkl112yYknnpiTTz45SfL0009n8+bNPbZ3yQSwrXL5BMA27KGHHsovf/nLXHPNNbnpppsyc+bMJMkxxxyTO++8M3/84x+TJF//+te7x17I4YcfnsWLF+euu+7KPffck+uuu6577B3veEduueWWPPnkk6lWq7n44otzySWX9MvrAtjanCkG2Ibttttu2WmnnXLSSSdl7dq1GTRoUN7xjnfkc5/7XObMmZM5c+bkoYceyj777JOLLrroRff3tre9LcuXL8/pp5+eESNG5PDDD+8O6/322y8f/ehH84lPfCJPPPFE3vSmN2X27Nn9/RIBtoqG2l//ng4A25Rvf/vb+a//+q+cd9552WGHHbJs2bL8y7/8S2677bbnvUQCgGdzphhgG3bggQfmu9/9bo455phs3Lgxu+22W8466yxBDNBLzhQDAFA8X7QDAKB4ohgAgOKJYgAAiieKAQAonigGAKB4ohgAgOKJYgAAiieKAQAo3v8HE3vwoUR0ZS4AAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 24
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:27.884919Z",
     "start_time": "2024-09-19T13:29:27.114380Z"
    }
   },
   "cell_type": "code",
   "source": [
    "plt.figure(figsize=(8,8))\n",
    "plt.title('Age VS Label')\n",
    "ax = sns.countplot(x = 'age_range',hue='label',data=train_data_user_info)"
   ],
   "id": "bdef294fff807ae0",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 800x800 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAr4AAAK3CAYAAABjiEy9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAABAI0lEQVR4nO3deXRU9eH//9fMZCGADlI0iAGVDzAChk0CGuBDiFFcAY2CtVXqsVRA5djEamNBwfARwkcQ69ZPjoIgxaUQgoBWwA0FpCxCU0sSm7KFXQMhCYQJM/f3B1/mZ5oASZglmffzcY7nOPd9b+4775MJTy53ZmyWZVkCAAAAwpw91BMAAAAAgoHwBQAAgBEIXwAAABiB8AUAAIARCF8AAAAYgfAFAACAEQhfAAAAGIHwBQAAgBEIXwAAABiB8AWABnj00UeVlJQU9PPm5ubK5XIpPz+/2vacnBy5XC4VFhZKkkpKSpSenq5+/fqpf//+eu655+R2u+t8ngceeEDjx49v8DyLi4vlcrmUl5fX4K/xU8nJycrJyfHL1wJgLsIXAOrJ4/Fow4YN2r9/v4qKioJ67gEDBkiSNmzYUG37xo0bdemll6pLly7yer0aP3689u/fr9mzZystLU25ubnKzs4O6lwBoLEhfAGgnrZt26aysjJFRUVp3bp1QT33mbj929/+Vm37hg0blJiYKEkqLCzUt99+qz/84Q9KTEzUqFGjlJqayhVTAMYjfAGgntatW6e4uDgNGTJEa9euDfr5BwwYoE2bNsmyLEnSvn37tHfvXt/V4CNHjkg6fbvDGWPGjFFWVlbQ5woAjQnhCwD1tHbtWt+9sxs2bFBVVVW18U8++UQ33XSTEhISNHHiRD377LPq27ev9u7dK0nas2ePxo8fr969e+u///u/9dJLL+nUqVN1Pv+AAQN09OhRFRQUSJLv6u+ZK77x8fFq3bq1MjIytHz5cnm9Xl1++eVKSEjwx7fvs2vXLo0ZM0bXXXedEhMTNWnSJFVWVlbbZ9u2bbrtttsUHx+vhx9+WPv37682/tFHH+mOO+5Qjx49NGLECK1fv96vcwSAnyJ8AaAeysvL9fe//139+vVTQkKCjh8/rq1bt/rG9+zZo/T0dN1///2aNWuW1q1bp4qKCmVnZ6t169Zyu9369a9/rbKyMr322mtKS0vT/Pnz9eqrr9Z5DgkJCYqKivIF79/+9jd16dJFl156qSSpZcuWys7OVnR0tNLT03X77bfryy+/9Os6WJalRx55RD/88INeffVVPf/88/riiy/01ltvVdtv1qxZGj16tF5++WXt2bNHTzzxhG9s/fr1SktL09ChQ/XWW2+pZ8+eGjNmTNDvmwZgDsIXAOrhm2++0alTp9SvXz917txZrVu31tdff+0b/+6773TxxRfroYce0qBBg3Trrbfq6NGj6tOnj2JiYrR8+XLt3btXL7/8shITEzVixAiNGjVKS5curfMcmjVrpuuuu84Xvhs3btTAgQOr7RMfH6+//vWvmjp1qk6cOKFHHnlE77zzjn8WQdKJEyc0evRozZw5UzfccIOSk5PVq1evan8JkKTRo0dr1KhRSk5O1nPPPaetW7f69nn99deVnJysxx9/XAkJCXruuefUsmVLrVixwm/zBICfigj1BACgKTnzYrbk5GTftrVr1+q3v/2tJKljx446evSoNm/erP/6r//Spk2b1LNnT9++hYWFqqqq0g033FDja7vdbkVFRdVpHgMGDNCbb76pAwcOaPfu3b7bHH4qMjJS9957r2699VaNGzdOWVlZGjp0qC677LJ6fc+1ad68uW6++WYtWbJE06dP17Zt21RaWlrjdop+/fr5/r9Hjx6SpJ07d6pXr14qLCzU0aNH5XK5qh2za9euC54fANSG8AWAeli7dq1uv/12jRkzRpL02Wef6dVXX9XRo0fVqlUrXXrppWrbtq1++ctfyuv1qkePHho3bly1r9G2bVv96U9/qvG1IyLq/it54MCBevHFF/XOO+8oKiqqWnC++uqrKiws1B//+EdJp299eOqpp3TPPffoX//6l1/Cd//+/RoxYoQ6duyoW265Rb/5zW/09ddfa/PmzdX2s9lsvv+320//I6PX6/Vtu//++zVy5Mhqx1x00UUXPD8AqA23OgBAHe3du1c7d+5UUlKSunbtqq5du+rWW2+V1+v1vSjrtdde09ChQ7V27Vp9+umn+uCDD3TJJZf4vkbnzp31448/KjY21vc1jh49qrlz59brBW7XXHONfvazn2n+/Pm67rrr1KxZM9+Yw+HQV199pePHj/u2HT16VJLUrl27C1yF01auXKmKigrNmzdPo0ePVt++fWu9Urtlyxbf///jH/+QJHXo0EHS6bU4fPiwbx26du2q1atX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ZqbS09M1Y8YMeTweLViw4PQkIyL8PgYAAACzhOztzM6YPn267/9TUlK0cuVK5eXlqU+fPmrdunVAxwAAAGCOkIfvf4qNjVVsbGzQxgAAAGCGkH5kMQAAABAshC8AAACMQPgCAADACIQvAAAAjED4AgAAwAiELwAAAIxA+AIAAMAIhC8AAACMQPgCAADACIQvAAAAjED4AgAAwAiELwAAAIxA+AIAAMAIhC8AAACMQPgCAADACIQvAAAAjED4AgAAwAiELwAAAIxA+AIAAMAIhC8AAACMQPgCAADACIQvAAAAjED4AgAAwAiELwAAAIxA+AIAAMAIhC8AAACMQPgCAADACIQvAAAAjED4AgAAwAh+C1/LsuTxePz15QAAAAC/alD4Tp48WW63u9q2b775RrfddptfJgUAAAD4W4PC9/33368Rvp06ddL+/fv9MikAAADA3yLqs3Nubq6k07c1LFu2TDExMb7H69at07XXXuv3CQIAAAD+UK/wXbx4sSTJZrNp2bJlcjgckiS73a4rr7xSs2bN8v8MAQAAAD+oV/i+8847kqRrrrlG2dnZatmyZUAmBQAAAPhbg+7xHTVqlKKiovw9FwAAACBg6nXF94wpU6bI7XZr//79siyr2li7du38MjEAAADAnxoUvgsWLNCMGTNUVVVVLXxtNpu2b9/ut8kBAAAA/tKg8P3jH/+o3/3ud7rvvvsUGRnp7zkBAAAAftege3xbtmypG264gegFAABAk9Gg8J04caImTZqkwsJCf88HAAAACIgG3eowdepUHT16VMOHD9fFF19c7W3NPv30U79NDgAAAPCXBoXv9OnT/T0PAAAAIKAaFL5xcXH+ngcAAAAQUA0K3+TkZNlsNt9bmdlsNt8Yb2cGAACAxqhB4Zufn+/7/8rKSuXl5enVV1/V+PHj/TYxAAAAwJ8a9K4OP9WsWTMlJCTojTfeUFZWlj/mBAAAAPjdBYfvGT/++KMOHTrkry8HAAAA+NUF3eN7htfr1eHDh/Xggw/6bWIAAACAP/nl7cxsNpvatm2r9u3b+2VSAAAAgL816FaHfv36qV+/fmrWrJmOHDmi6OhoohcAAACNWoOu+B48eFDjxo3Trl27dNlll+nQoUO66qqr9Prrrys2NtbfcwQAAAAuWIOu+D777LO69tprtX79en388cdat26dunfvrkmTJvl7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+2rIkCHatGmT77jly5drwIABuvnmm5WVlaUbbrhB+fn5sixLb775poYMGaKBAwdq3rx5/loyAGgwwhcAQsTr9WrChAm65ZZbtHr1avXu3VszZsyQJE2ePFl33nmn5s2bp0WLFmnatGkaNmyYdu/erfHjx2v06NHKycnRd999pzfffLPO53z55Zd16NAhzZw5U+3bt5ckFRQUKDMzU9OmTdPHH3+skpISLVy40HfMl19+qd27d2vJkiXq06ePXnrpJUnSsWPHNGnSJM2aNUuPPvqoPvzwQ3344Ye6+uqrtXTpUmVnZ2vWrFl65ZVXNHv27GrBDAChQPgCQAgtXbpUDz30kPbt26eKigrt3LlTkrR9+3bdfPPNuuaaa9SpUyft3btXTqdTy5cvV7du3XTPPfeoQ4cOuu+++/TZZ5/V+XwtW7bU9OnTdf3116tFixaSpKuuukpff/214uPjVVRUJMuyfPOQJIfDoczMTLVv31533XWX9u/fL0nauXOnWrRoof79++vWW2/VDz/8IMuyFB0drdzcXI0cOVK9e/dW7969NWTIkHrNEwACISLUEwAAU9ntds2dO1eLFi1SXFycrrjiCnm9XklShw4dtHXrVl1yySXauXOnOnXqJEk6ePCg/vnPf6pv376SJI/Ho+bNm9f5nA888ECNbZWVlZo4caI2btyorl27yuFw+OYhSb169VJ0dLQkKTIy0re9Xbt2OnbsmHbv3q0DBw6oVatWatOmjW+e3377rd577z1J0smTJ5WSklKf5QEAvyN8ASBENmzYoHfffVerVq1SmzZt9OWXX+q7776TJHXu3FlTp07VpEmT9Itf/ELXXHONJKlt27ZKTk7WU089Jen07RInTpyo8zljYmJqbJs/f75KSkq0du1aRUVFacaMGSopKfGNt2zZstavFR0drY4dO+r222+Xw+HQCy+8ILvd7pvnPffco6FDh0qS3G53tWgGgFDgVgcACJHjx49LksrKyrR582ZNmzZNlmVpz5492rhxoy+KMzIyfMfccccd2rRpk3bt2iXpdLT+dPxC5nHkyBEtW7ZM7777rizLOu9xn3zyiWJjY5Wbm6svvvhCt912m29sxIgRWrFihSoqKlRZWalnn3222n3DABAKXPEFgBAZNGiQkpOTdffddysuLk4jR47UzJkzFRMTozZt2uiBBx5QWVmZIiIiNGLECD3//PNq3769pk+frunTp2vPnj3q0aOHZs2adUHzePDBB7Vlyxbdcsst6tWrl+655x5t2LDhvMcNGDBAWVlZuu+++1RWVian06knn3xS9957r4YNG6ZDhw7pkUceUXl5uVJSUjRhwoQLmicAXCibVZe/1gMAguYvf/mL/vrXv2rq1Klq1qyZ8vPz9Zvf/Ebr168/620HofC73/1O7dq10wMPPCCbzabc3FytWLFCOTk5oZ4aANSKK74A0Mhcf/31Wr58ue644w6dPHlSV1xxhX7/+9+fM3o3bdqksWPH1jqWmpp6wbdD1ObOO+/Uiy++qLfffluS5HK59PTTT/v9PADgL1zxBYAwcPLkSR0+fLjWsRYtWuiSSy4J8owAoPEhfAEAAGAE3tUBAAAARiB8AQAAYATCFwAAAEYgfAEAAGAEwhcAAABGIHwBAABgBMIXAAAARvj/ADomLZT8S/S2AAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 25
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:33.565896Z",
     "start_time": "2024-09-19T13:29:27.885894Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 训练集不同时间段的复购用户\n",
    "all_data_1 = user_log.merge(train_data,on=['user_id'],how='left')"
   ],
   "id": "62c74456793b1b2c",
   "outputs": [],
   "execution_count": 26
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:35.715088Z",
     "start_time": "2024-09-19T13:29:33.566888Z"
    }
   },
   "cell_type": "code",
   "source": "all_data_1[all_data_1['label'].notnull()].head()",
   "id": "b168846945136f7c",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "     user_id  item_id  cat_id  seller_id  brand_id  time_stamp  action_type  \\\n",
       "419   234512   146770    1173        693    3186.0         625            0   \n",
       "420   234512   146770    1173        693    3186.0         625            0   \n",
       "421   234512  1106076     992       3783    8164.0        1016            0   \n",
       "422   234512  1106076     992       3783    8164.0        1016            0   \n",
       "423   234512   866567    1198        693    3186.0         625            0   \n",
       "\n",
       "     merchant_id  label  \n",
       "419       3018.0    0.0  \n",
       "420       3271.0    0.0  \n",
       "421       3018.0    0.0  \n",
       "422       3271.0    0.0  \n",
       "423       3018.0    0.0  "
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>item_id</th>\n",
       "      <th>cat_id</th>\n",
       "      <th>seller_id</th>\n",
       "      <th>brand_id</th>\n",
       "      <th>time_stamp</th>\n",
       "      <th>action_type</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>419</th>\n",
       "      <td>234512</td>\n",
       "      <td>146770</td>\n",
       "      <td>1173</td>\n",
       "      <td>693</td>\n",
       "      <td>3186.0</td>\n",
       "      <td>625</td>\n",
       "      <td>0</td>\n",
       "      <td>3018.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>420</th>\n",
       "      <td>234512</td>\n",
       "      <td>146770</td>\n",
       "      <td>1173</td>\n",
       "      <td>693</td>\n",
       "      <td>3186.0</td>\n",
       "      <td>625</td>\n",
       "      <td>0</td>\n",
       "      <td>3271.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>421</th>\n",
       "      <td>234512</td>\n",
       "      <td>1106076</td>\n",
       "      <td>992</td>\n",
       "      <td>3783</td>\n",
       "      <td>8164.0</td>\n",
       "      <td>1016</td>\n",
       "      <td>0</td>\n",
       "      <td>3018.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>422</th>\n",
       "      <td>234512</td>\n",
       "      <td>1106076</td>\n",
       "      <td>992</td>\n",
       "      <td>3783</td>\n",
       "      <td>8164.0</td>\n",
       "      <td>1016</td>\n",
       "      <td>0</td>\n",
       "      <td>3271.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>423</th>\n",
       "      <td>234512</td>\n",
       "      <td>866567</td>\n",
       "      <td>1198</td>\n",
       "      <td>693</td>\n",
       "      <td>3186.0</td>\n",
       "      <td>625</td>\n",
       "      <td>0</td>\n",
       "      <td>3018.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 27
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:37.130478Z",
     "start_time": "2024-09-19T13:29:35.716079Z"
    }
   },
   "cell_type": "code",
   "source": "all_data_2=all_data_1[all_data_1['label'].notnull()]",
   "id": "97ecb653997c94c2",
   "outputs": [],
   "execution_count": 28
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:37.666617Z",
     "start_time": "2024-09-19T13:29:37.132461Z"
    }
   },
   "cell_type": "code",
   "source": [
    "all_data_2_sum=all_data_2.groupby(['time_stamp'])['label'].sum().reset_index()\n",
    "all_data_2_sum.head()"
   ],
   "id": "5636dc710a5a84af",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   time_stamp   label\n",
       "0         511   943.0\n",
       "1         512   975.0\n",
       "2         513  1221.0\n",
       "3         514  1170.0\n",
       "4         515  1260.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>time_stamp</th>\n",
       "      <th>label</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>511</td>\n",
       "      <td>943.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>512</td>\n",
       "      <td>975.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>513</td>\n",
       "      <td>1221.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>514</td>\n",
       "      <td>1170.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>515</td>\n",
       "      <td>1260.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 29
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:37.670786Z",
     "start_time": "2024-09-19T13:29:37.667608Z"
    }
   },
   "cell_type": "code",
   "source": [
    "all_data_2_sum['time_stamp'] = all_data_2_sum['time_stamp'].astype(str)\n",
    "all_data_2_sum['label'] = all_data_2_sum['label'].astype(int)\n"
   ],
   "id": "a59d8eb7db99fd4",
   "outputs": [],
   "execution_count": 30
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:37.676992Z",
     "start_time": "2024-09-19T13:29:37.671774Z"
    }
   },
   "cell_type": "code",
   "source": [
    "a=[]\n",
    "for i in range(len(all_data_2_sum)):\n",
    "    if len(all_data_2_sum['time_stamp'][i])==3:\n",
    "        a.append(all_data_2_sum['time_stamp'][i][0])\n",
    "    else:\n",
    "        a.append(all_data_2_sum['time_stamp'][i][0:2])"
   ],
   "id": "84db66527ee9883",
   "outputs": [],
   "execution_count": 31
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:37.681767Z",
     "start_time": "2024-09-19T13:29:37.677969Z"
    }
   },
   "cell_type": "code",
   "source": [
    "all_data_2_sum['month']=a\n",
    "all_data_2_sum=all_data_2_sum.astype(int)"
   ],
   "id": "dad0311f068df787",
   "outputs": [],
   "execution_count": 32
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:38.843991Z",
     "start_time": "2024-09-19T13:29:37.682753Z"
    }
   },
   "cell_type": "code",
   "source": [
    "plt.figure(figsize=(20,8))\n",
    "c=5\n",
    "for i in range(1,8):\n",
    "    \n",
    "    plt.subplot(3, 3, i)\n",
    "    b=all_data_2_sum[all_data_2_sum[\"month\"]==c]\n",
    "    plt.plot(b['time_stamp'], b['label'], linewidth=1, color=\"orange\", marker=\"o\",label=\"Mean value\")\n",
    "  \n",
    "    c+=1"
   ],
   "id": "f9333c4f61dd64bb",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 2000x800 with 7 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABlUAAAKRCAYAAADNpi+SAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzde3xU9Z3/8dfM5MIkkEAghEDCHUEwgkjUoliQ2FprEcG61Xa3trVK3bYq9GeXeqk2tla3rbjb7rbU2tZS61JNqb2qIAjeEQUjyMWEQIKQBAMhkwshM/P745vJfZKZydzn/Xw8wiHne+bM95yZJGe+n/P9fCxut9uNiIiIiIiIiIiIiIiI9Msa6Q6IiIiIiIiIiIiIiIjEAgVVREREREREREREREREfKCgioiIiIiIiIiIiIiIiA8UVBEREREREREREREREfGBgioiIiIiIiIiIiIiIiI+UFBFRERERERERERERETEBwqqiIiIiIiIiIiIiIiI+CAp0h2IBJfLRVtbG1arFYvFEunuiIiIRAW3243L5SIpKQmrVfddhJKuRURERHrTtUj46FpERESkN1+vRRIyqNLW1kZpaWmkuyEiIhKVCgoKSElJiXQ34pquRURERLzTtUjo6VpERETEu4GuRRIyqOKJMs2cOTMuLtScTielpaUUFBRgs9ki3Z1BiadjAR1PtNPxRK94OhaInePx9FN3hoae5xz3fE/EynslUnR+vNO56Z/Oj3c6N97p3PQvFOdH1yLh4+1aBPTe74vOSW86J73pnPSmc9Kbzklv0XROfL0WScigimdqq81mi/gLFUzxdDzxdCyg44l2Op7oFU/HArFzPEoBEXoDXYvEynslUnR+vNO56Z/Oj3c6N97p3PQvFOdH1yKh58u4iN77vemc9KZz0pvOSW86J73pnPQWTedkoGsR3f4hIiIiIiIiIiIiIiLig4ScqSIiccrlhNpt0HwU7LmQvQCs0RHhFhEREZEEoWtSERGR8NPfXwkjBVVEJD5UlsCO26CpqnNdWh6c/yjkLwt8v/qjLCIiIiK+CtU1qYiIiHinv78SZkr/JSKxr7IEtl3b/Y8nQNMRs76yJPD9PjsRNi2CV28wy2cnBr4/EREREYlfobomFREREe/091ciQEEVEYkclxOqt0DFH8zS5QxsHztuA9x9NLav23G7//vWH2URERER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dLJu3TrApAgLpE1E/KTfbyLiJwVVBisUHyj1ITWxBPP1DmbdFxERERERiW/+fhbR541BmTNnDk899VSv9UVFRTz//POUlpYyd+5csrKyBt0mIn7S7zcR8YOCKiLxRrOdREREREQkVNo/bzirt3Bo7+tMmHERtmitsRlDcnJyyMnJCWqbiPhJ4yki4iMFVUTikWY7iYiIiIhIqEQi7aCISDhoPEVEfJCQQRW32+RGdDqdOJ3OCPdm8DzHoGOJPjqe6KbjiV7xdCwQO8fj6Z/n76SETtdrka5i5b0SKTo/3unc9E/nxzudG+90bvoXivOja5Hw8XYt0nWd3vuddE560znpTeekN52T3nROeoumc+LrtYjFnYBXK62trZSWlka6GyIiIlGpoKCAlJSUSHcjrulaRERExDtdi4SerkVERES8G+haJCGDKi6Xi7a2NqxWKxaLJdLdERERiQputxuXy0VSUhJWqzXS3YlruhYRERHpTdci4aNrERERkd58vRZJyKCKiIiIiIiIiIiIiIiIv3Trh4iIiIiIiIiIiIiIiA8UVBEREREREREREREREfGBgioiIiIiIiIiIiIiIiI+UFBFRERERERERERERETEBwqqiIiIiIiIiIiIiIiI+EBBFRERERERERERERERER8oqCIiIiIiIiIiIiIiIuIDBVVEREQG6cSJE7z99tvU1dVFuisiIiIiIadrHxEREQmGWL2miNmgSnFxMdOnT+/4uvzyyzvaTpw4wWWXXUZVVVW3x+zfv5/ly5dTWFjIQw89hNvt9um53nzzTT71qU9x4f9n787jo6ru/4+/ZiYJJIQEEAhLwqYQFiOLxAVEWeJSaxFFbW377d5Kba016bctLa6pWmxt8dvvr/1+qV/bWmvVylKtWlEEwR0XIKIkENaEVQmQCYSQmfv74ySBZJbMTGaf9/PxwDH33HvnzGfuzNx7zzmfc/75/OlPfwrr64DQXsvLL7/MrFmzGDt2LNdffz3V1dUBPde8efPaPdfXvva1cL4UILTX428bfyL93nRWN2+vZ+nSpe3Wb/23dOnSTp8rlu+Pv2MqXj87ob6eeP38hPJaEvGz4+v1JOpn57nnnuOyyy7jnnvuYcaMGTz33HNt28TzZ0di69e//jXz5s1r+9vfsRLqcZTIgolPqN+DiapjbCD8576JLJj4pPqxE4lzv0QVTGxS7bgBz/hE4txHosffOXeqno+EGpNk/j7o7NosFc89Qo1Jqh4nqXqeEWpMUvU4SehzCitBff7zn7dWr15tHTlyxDpy5IhVX19vWZZlffrpp9YNN9xgjRo1ytq9e3fb+idOnLBmzJhh3X777dbOnTutb3/729bTTz/d6fN8+umn1qRJk6zf/e531vbt261rrrnGevPNN2P6Wnbu3GkVFxdbzz33nHXw4EHrBz/4gfX5z38+oOeaOnWqVVlZ2fZcDQ0NYX0tobwef9v4E433JpTXc+LEibZ1jxw5Yu3du9c6//zzrV27dnX6XLF6f/wdU/H82Qnl9cTz5yfY1+Jrm87E63uTiJ+dI0eOWOeff75VWVlpWZZlLVu2zJo+fXrb64nnz47ETmVlpTVx4kRr586dlmX5P1ZCPY4SWTDxsazQvgcTVcfYWFb4z30TWTDxsazUPnYice6XqIKJjWWl1nFjWZ7xicS5j0SXr3Pu6urqlD0fCSUmlpXc3wf+rs1S9dwjlJhYVmoeJ6l8nhFKTCwrNY+TDz/8MKHPKRKyUeXkyZPWxIkTLafT6VH21a9+1frzn//s8UX20ksvWcXFxdaxY8csy7Ksjz/+2PrCF77Q6XP96U9/si6//HLL7Xa37aesrCxMryS01/LKK69Yjz/+eNvfb775pjVu3LhOn2vv3r3W1KlTw1NxH0J5Pf628SfS701ndfP1ejr6wx/+YN1+++2dPlcs3x9/x1S8fnYsK7TXE6+fn1BeSyJ+doKJfyJ8dvbs2WP985//bPv7448/tiZOnGhZVnx/diR23G639fnPf95atGhR2zJ/x0qox1GiCjY+oX4PJiJvsbGs8J/7Jqpg45Pqx04kzv0SUbCxSaXjxrK8xycS5z4SW63n3DofOSWQmKTa98Hp12Y69zACiUmqHic6zzglkJik6nGS6OcUCZn+q7KyEsuymDNnDueccw7f/OY32bNnD2CGS331q1/12Gbz5s2MHz+ezMxMAAoLCwNK+VNZWckFF1yAzWYD4JxzzuGjjz6K6WuZMWMGN954Y9vf27dvZ+jQoZ0+18aNG3G5XFx88cVMmDCB2267jSNHjoTttUBor8ffNp09VyTfm1Bfz+lOnDjBo48+yne+851OnyuW74+/YypePzuhvp54/fyE8loS8bMTaPwT5bMzcOBAZs+eDcDJkyd55JFHuOyyy4D4/uxI7Dz11FNs3ryZ/Px8Vq1axcmTJ/0eK6EeR4kq2PiE+j2YiLzFBsJ/7puogo1Pqh87kTj3S0TBxiaVjhvwHp9InPtI7Jx+zq3zESPQmKTS90HHazOdewQek1Q9TnSeYQQak1Q9ThL9nCIhG1Wqq6sZOXIkDz74IM899xzp6enccccdABQUFHjdxul0kp+f3/a3zWbDbrd3euOt43bZ2dns378/DK/CCOW1nK6pqYlHHnmEL37xi52uu2PHDsaNG8f//d//sWTJEmpra/nNb37T5ddwulBej79t/In0e9NZ3QJ5f5599lnGjx/frp6+xPr9adXxmIrXzw6E9noCLeso0u9PKK8lUT87vl7P6RLts7N582amTp3K66+/zs9+9jMgvj87EhsNDQ0sWrSIoUOHsm/fPv70pz/x5S9/2e+xEupxlIhCiU+o34OJxldsTpw4EfZz30QUSnx07JxoWydc536JJpTYpMpxA53HJ5znPhI7p59z63zECDQmqfR90PHaTOcegccklY+TVql6ngGBxyTVj5OEPaeI+tiYCKipqbFGjx7dLt9cxyF3DzzwgHXfffe12+7iiy+29u3b53fft956q/WXv/yl7e/m5mZr7NixYaq5p0Bey+kWLlxozZ4922pqagr6ud5++23r/PPPD7mugQj29fjaxptovze+6ubv9cydO9davXp1SM8Vq/en4zGVKJ8dywrs9Zwunj8/wb4WX9t4kwjvTaJ9dtxut7Vp0ybrK1/5inXzzTdblpVYnx2JjmXLllnjx4+36urqLMsyw7yvuOIKa/LkyT6PlVCPo0QUSnw6CvR7MNH4is0TTzzRtk64zn0TUSjx6SiVj51wnfslmlBi01GyHjeW1Xl8wnnuI7Fz+jm3v/cvld7bQGPSUTJ/H/i6Nkvlc49AY9JRKh4nqXqeYVmBx6SjVDtOEvWcIiFHqnSUk5OD2+3mwIEDPtfJzc3l0KFD7ZY1NDSQnp7ud98dtwtkm64I5LW0ev3113niiSd48MEHQ6pTTk4OdXV1NDU1hVLVgJ8j0NcT7DbRfm+CqRvAzp072bVrF1OmTAn5uaL9/ng7phLlswOBvZ5W8f75Cea1+NrGl3h/bxLxs2Oz2Rg7diy//OUvWblyJUeOHEmoz45Ex759+zjnnHPo1asXAGlpaRQWFnLixAmfx0qox1EiCiU+HYVy3pEIfMWmpqbG5zY6dvzHp6NUPXbCee6XaEKJTUfJetxA5/EJ57mPxEbHc25/71+qvLfBxKSjZP0+CObaLFWPk2Ck2nGSyucZwcSko1Q7ThL1nCIhG1Xuv/9+nn/++ba/KyoqsNvtDBw40Oc2RUVFbNiwoe3vmpoampqayM3N9ftcHbf7+OOPycvL60Lt2wvltQDs3r2bH/3oR9x1112cddZZAT3XD37wA9avX9/uufr160dGRkZIdfcmlNcTagwi/d50pW4AL7zwAtOnTw/4Ax/r98fXMRWvnx0I7fVAfH5+QnktifrZ6Sz+ifTZ2b17NwsXLmxb7nA4ALDb7XH92ZHYGDBgQLu0MgB79uzhJz/5ic9jJdTjKBGFEp+u/E4nEl+xGTRokM9tdOz4j4+OnUFhP/dLNKHEJlWOG/AdnwEDBoT93Edio+M5t7/3L1Xe22BikirfB8Fcm6XqceJPKh8nqX6eEUxMUvU4efPNNxP6nCIhG1XGjBnDokWLWLduHW+++Sbl5eVcc801bZPXeFNcXEx9fT3Lly8HYPHixUyZMqXtDXM6nW0TWp5u5syZvPfee7z11ls0NzfzyCOPcNFFF8X0tTQ2NnLTTTdRUlLCrFmzaGhooKGhAcuy/L6WUaNGcf/997NhwwZWrVrFQw891G6SpFi9ns62idV7E+rrabV27VrOP/98j+Xx+P7YbDafx1S8fnZCfT3x+vkJ5bUk4mfH3+tplUifndGjR/Pkk0/y5JNPsnfvXh588EGmTp1Kz5494/qzI7Exffp0qqur+fvf/86+fft49NFH+fjjj7nooot8HiudHUfJJJT4dOV3OpH4is20adN8bqNjx398Uv3YOe+880I+90sWocQmVY4b8B2fMWPGhHzuI/Gl4zm3v/cvVd7bYGKSKt8Hvq7NvEnV48SfVD1O/N13SdXjxF9MUvU4GTFiRGKfU8Qq71hX/frXv7YmT55sXXLJJVZ5ebnV0NDQrtxbHsOXXnrJOuecc6wLL7zQOu+886yqqqq2shkzZlgvvfSS1+d67LHHrHHjxlnnn3++NWPGDOvgwYMxfS0vvfSSNWrUKI9/rev4ei1NTU3W/PnzrYkTJ1olJSXW7373O+vkyZNhfS2hvJ7OtonlexPq6zl+/Lg1btw4a+vWrR77i8f3p7NjKl4/O6G8nnj+/ITy3iTaZ6ez15Nonx3Lsqw1a9ZYn/nMZ6yJEydat9xyi/Xpp5+2bRPPnx2JjQ8++MD6/Oc/b51zzjnWzJkz244Bf8eKv7JkE0p8OvudTha+YtMq2HPfZBNKfFL52OnKuV8yCSU2qXLcWJbvz1Wo5z4SP3ydc6fy+UgoMUn27wN/12aWlZrnHqHEJBWPk1Q/zwglJql4nFhWYp9T2CzrtO7BKWD//v1UVFQwadIk+vTpE/B2O3fupLq6mvPOO4/s7OwI1lCCpfcmOvTZST56b6JDnx0JlL9jJdTjKJkoBqFR3CRUOnYkVDp2EpvORzyl6usOleIlgdBxIoGI5+Mk5RpVREREREREREREREREQpGQc6qIiIiIiIiIiIiIiIhEmxpVREREREREREREREREAqBGFRERERERERERERERkQCoUUVERERERERERERERCQAalQREREREREREREREREJgBpVREREREREREREREREAqBGFRERERERERERERERkQCoUUVERERERERERERERCQAalQREREREREREREREREJgBpVREREREREREREREREAqBGFRERERERERERERERkQCoUUVEREREREREJEzq6up4//33OXToUKyrIiIiIhGgRhURERERERERkTB47rnnuOyyy7jnnnuYMWMGzz33HABVVVXMnTuX4uJiFi5ciGVZbdtEokxEREQix2al4K+u2+2mubkZu92OzWaLdXVERETigmVZuN1u0tLSsNvV7yKSdC4iIiLiKdHPRY4ePcpll13Go48+yqhRo1i+fDkPPfQQL774IldccQUXXXQR3/rWt/jFL37B5Zdfzty5c2lqagp7WSB0LiIiIuIp0HORtCjWKW40NzdTUVER62qIiIjEpaKiIjIyMmJdjaSmcxERERHfEvVcpKGhgZ/97GeMGjUKgNGjR3PkyBHWrFmD0+lk/vz5ZGZmUlpayt13383cuXMjUhYInYuIiIj41tm5SEo2qrS2MhUVFeFwONqVuVwuKioqvJalKsXEk2LiSTHxpJh4Ukw8xVNMWuuSiD1DE42vc5F4Oh7ikeLjm2Ljn+Ljm2Ljm2LjXyTik+jnIgMHDmT27NkAnDx5kkceeYTLLruMzZs3M378eDIzMwEoLCykuroaICJlgUjUGIuIiERDZ7+TKdmo0jq01eFw+Dz581eWqhQTT4qJJ8XEk2Li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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 33
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "**特征工程**",
   "id": "e573adf049f7e6f4"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:39.032874Z",
     "start_time": "2024-09-19T13:29:38.844970Z"
    }
   },
   "cell_type": "code",
   "source": [
    "del test_data['prob']\n",
    "train_data['target'] = 1\n",
    "test_data['target']=-1\n",
    "all_data = train_data.append(test_data)\n",
    "all_data = all_data.merge(user_info,on=['user_id'],how='left')\n",
    "del train_data, test_data, user_info\n",
    "gc.collect()"
   ],
   "id": "aa39ac3352e95267",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "23007"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 34
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:39.040420Z",
     "start_time": "2024-09-19T13:29:39.033854Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.head()",
   "id": "865354f287cce47e",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label  target  age_range  gender\n",
       "0    34176         3906    0.0       1        6.0     0.0\n",
       "1    34176          121    0.0       1        6.0     0.0\n",
       "2    34176         4356    1.0       1        6.0     0.0\n",
       "3    34176         2217    0.0       1        6.0     0.0\n",
       "4   230784         4818    0.0       1        0.0     0.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 35
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:39.066263Z",
     "start_time": "2024-09-19T13:29:39.041411Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.dropna(subset=['age_range','gender'],inplace=True)",
   "id": "3f687fe5f85ef1df",
   "outputs": [],
   "execution_count": 36
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:39.077429Z",
     "start_time": "2024-09-19T13:29:39.067255Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.isnull().sum()",
   "id": "cbf7c8d9d52b2f5f",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id             0\n",
       "merchant_id         0\n",
       "label          257626\n",
       "target              0\n",
       "age_range           0\n",
       "gender              0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 37
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:40.107047Z",
     "start_time": "2024-09-19T13:29:39.078415Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 用户店铺数\n",
    "sell= user_log.groupby(['user_id'])['seller_id'].count().reset_index()\n",
    "\n",
    "all_data = all_data.merge(sell,on=['user_id'],how='inner')\n",
    "all_data.rename(columns={'seller_id':'sell_sum'},inplace=True)\n",
    "all_data.head()"
   ],
   "id": "24d9e97dc4cedfc5",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label  target  age_range  gender  sell_sum\n",
       "0    34176         3906    0.0       1        6.0     0.0       451\n",
       "1    34176          121    0.0       1        6.0     0.0       451\n",
       "2    34176         4356    1.0       1        6.0     0.0       451\n",
       "3    34176         2217    0.0       1        6.0     0.0       451\n",
       "4   230784         4818    0.0       1        0.0     0.0        54"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 38
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:29:40.111355Z",
     "start_time": "2024-09-19T13:29:40.107047Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def nunique_k(data,sigle_name,new_name_1):\n",
    "    data1=user_log.groupby(['user_id'])[sigle_name].nunique().reset_index()\n",
    "    \n",
    "    data_union=data.merge(data1,on=['user_id'],how='inner')\n",
    "    data_union.rename(columns={sigle_name:new_name_1},inplace=True)\n",
    "    return data_union\n",
    "    "
   ],
   "id": "9ad0f96c938d88a6",
   "outputs": [],
   "execution_count": 39
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:30:31.025773Z",
     "start_time": "2024-09-19T13:29:40.111355Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 不同店铺个数\n",
    "all_data=nunique_k(all_data,'seller_id','seller_id_unique')"
   ],
   "id": "5da0f73c4dfb74e9",
   "outputs": [],
   "execution_count": 40
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:31:15.905876Z",
     "start_time": "2024-09-19T13:30:31.026753Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 不同品类个数\n",
    "all_data=nunique_k(all_data,'cat_id','cat_id_unique')"
   ],
   "id": "45258006874323b7",
   "outputs": [],
   "execution_count": 41
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:32:08.878282Z",
     "start_time": "2024-09-19T13:31:15.906862Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 不同品牌个数\n",
    "all_data=nunique_k(all_data,'brand_id','brand_id_unique')"
   ],
   "id": "7d13ac0546966164",
   "outputs": [],
   "execution_count": 42
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:33:32.425552Z",
     "start_time": "2024-09-19T13:32:08.879267Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 不同商品个数\n",
    "all_data=nunique_k(all_data,'item_id','item_id_unique')"
   ],
   "id": "6299e5c547381483",
   "outputs": [],
   "execution_count": 43
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:33:59.742924Z",
     "start_time": "2024-09-19T13:33:32.426543Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 活跃天数\n",
    "all_data=nunique_k(all_data,'time_stamp','time_stamp_unique')"
   ],
   "id": "d6c27fede25d827",
   "outputs": [],
   "execution_count": 44
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:10.959406Z",
     "start_time": "2024-09-19T13:33:59.743900Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 不用行为种数\n",
    "all_data=nunique_k(all_data,'action_type','action_type_unique')"
   ],
   "id": "73a1979c3accdb7",
   "outputs": [],
   "execution_count": 45
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:10.972854Z",
     "start_time": "2024-09-19T13:34:10.963906Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.head()",
   "id": "c47a5a3068a9f3ed",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label  target  age_range  gender  sell_sum  \\\n",
       "0    34176         3906    0.0       1        6.0     0.0       451   \n",
       "1    34176          121    0.0       1        6.0     0.0       451   \n",
       "2    34176         4356    1.0       1        6.0     0.0       451   \n",
       "3    34176         2217    0.0       1        6.0     0.0       451   \n",
       "4   230784         4818    0.0       1        0.0     0.0        54   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  item_id_unique  \\\n",
       "0               109             45              106             256   \n",
       "1               109             45              106             256   \n",
       "2               109             45              106             256   \n",
       "3               109             45              106             256   \n",
       "4                20             17               19              31   \n",
       "\n",
       "   time_stamp_unique  action_type_unique  \n",
       "0                 47                   3  \n",
       "1                 47                   3  \n",
       "2                 47                   3  \n",
       "3                 47                   3  \n",
       "4                 16                   2  "
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>time_stamp_unique</th>\n",
       "      <th>action_type_unique</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54</td>\n",
       "      <td>20</td>\n",
       "      <td>17</td>\n",
       "      <td>19</td>\n",
       "      <td>31</td>\n",
       "      <td>16</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 46
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:10.980380Z",
     "start_time": "2024-09-19T13:34:10.973830Z"
    }
   },
   "cell_type": "code",
   "source": "user_log.head()",
   "id": "32233ec8fee74e3f",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  item_id  cat_id  seller_id  brand_id  time_stamp  action_type\n",
       "0   328862   323294     833       2882    2660.0         829            0\n",
       "1   328862   844400    1271       2882    2660.0         829            0\n",
       "2   328862   575153    1271       2882    2660.0         829            0\n",
       "3   328862   996875    1271       2882    2660.0         829            0\n",
       "4   328862  1086186    1271       1253    1049.0         829            0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>item_id</th>\n",
       "      <th>cat_id</th>\n",
       "      <th>seller_id</th>\n",
       "      <th>brand_id</th>\n",
       "      <th>time_stamp</th>\n",
       "      <th>action_type</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>328862</td>\n",
       "      <td>323294</td>\n",
       "      <td>833</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>328862</td>\n",
       "      <td>844400</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>328862</td>\n",
       "      <td>575153</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>328862</td>\n",
       "      <td>996875</td>\n",
       "      <td>1271</td>\n",
       "      <td>2882</td>\n",
       "      <td>2660.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>328862</td>\n",
       "      <td>1086186</td>\n",
       "      <td>1271</td>\n",
       "      <td>1253</td>\n",
       "      <td>1049.0</td>\n",
       "      <td>829</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 47
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:10.983163Z",
     "start_time": "2024-09-19T13:34:10.981369Z"
    }
   },
   "cell_type": "code",
   "source": "",
   "id": "bd5267103620c84a",
   "outputs": [],
   "execution_count": 47
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:10.987130Z",
     "start_time": "2024-09-19T13:34:10.984153Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def most_love(data_1,most_name,new_name_2):\n",
    "    data2=user_log.groupby(['user_id'])[most_name].apply(lambda x: Counter(x).most_common(1)[0][0]).reset_index()\n",
    "    data_union_1=data_1.merge(data2,on=['user_id'],how='inner')\n",
    "    data_union_1.rename(columns={most_name:new_name_2},inplace=True)\n",
    "    return data_union_1"
   ],
   "id": "54255d9f989c9a93",
   "outputs": [],
   "execution_count": 48
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:27.051957Z",
     "start_time": "2024-09-19T13:34:10.988125Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 用户最喜欢的店铺\n",
    "all_data=most_love(all_data,'seller_id','sell_id_most')"
   ],
   "id": "7921d3cf1c64063a",
   "outputs": [],
   "execution_count": 49
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:42.687304Z",
     "start_time": "2024-09-19T13:34:27.052950Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最喜欢的类目\n",
    "all_data=most_love(all_data,'cat_id','cat_id_most')"
   ],
   "id": "97dec1d8d858448",
   "outputs": [],
   "execution_count": 50
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:34:59.691456Z",
     "start_time": "2024-09-19T13:34:42.688274Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最喜欢的品牌\n",
    "all_data=most_love(all_data,'brand_id','brand_id_most')"
   ],
   "id": "10fa65d9d5c699c9",
   "outputs": [],
   "execution_count": 51
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:35:13.927332Z",
     "start_time": "2024-09-19T13:34:59.692446Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最常见的行为动作\n",
    "all_data=most_love(all_data,'action_type','action_type_most')"
   ],
   "id": "ff14de40b7de0f20",
   "outputs": [],
   "execution_count": 52
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:35:13.938282Z",
     "start_time": "2024-09-19T13:35:13.928325Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.head()",
   "id": "e58ddb77d0271a80",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label  target  age_range  gender  sell_sum  \\\n",
       "0    34176         3906    0.0       1        6.0     0.0       451   \n",
       "1    34176          121    0.0       1        6.0     0.0       451   \n",
       "2    34176         4356    1.0       1        6.0     0.0       451   \n",
       "3    34176         2217    0.0       1        6.0     0.0       451   \n",
       "4   230784         4818    0.0       1        0.0     0.0        54   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  item_id_unique  \\\n",
       "0               109             45              106             256   \n",
       "1               109             45              106             256   \n",
       "2               109             45              106             256   \n",
       "3               109             45              106             256   \n",
       "4                20             17               19              31   \n",
       "\n",
       "   time_stamp_unique  action_type_unique  sell_id_most  cat_id_most  \\\n",
       "0                 47                   3           331          662   \n",
       "1                 47                   3           331          662   \n",
       "2                 47                   3           331          662   \n",
       "3                 47                   3           331          662   \n",
       "4                 16                   2          3556          407   \n",
       "\n",
       "   brand_id_most  action_type_most  \n",
       "0         4094.0                 0  \n",
       "1         4094.0                 0  \n",
       "2         4094.0                 0  \n",
       "3         4094.0                 0  \n",
       "4         1236.0                 0  "
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>time_stamp_unique</th>\n",
       "      <th>action_type_unique</th>\n",
       "      <th>sell_id_most</th>\n",
       "      <th>cat_id_most</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>256</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54</td>\n",
       "      <td>20</td>\n",
       "      <td>17</td>\n",
       "      <td>19</td>\n",
       "      <td>31</td>\n",
       "      <td>16</td>\n",
       "      <td>2</td>\n",
       "      <td>3556</td>\n",
       "      <td>407</td>\n",
       "      <td>1236.0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 53
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:35:13.943224Z",
     "start_time": "2024-09-19T13:35:13.939274Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def most_love_cnt(data_1,most_name,new_name_2):\n",
    "    data2=user_log.groupby(['user_id'])[most_name].apply(lambda x: Counter(x).most_common(1)[0][1]).reset_index()\n",
    "    data_union_1=data_1.merge(data2,on=['user_id'],how='inner')\n",
    "    data_union_1.rename(columns={most_name:new_name_2},inplace=True)\n",
    "    return data_union_1"
   ],
   "id": "a08d1707d17fef3d",
   "outputs": [],
   "execution_count": 54
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:35:30.460801Z",
     "start_time": "2024-09-19T13:35:13.944186Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 用户最喜欢的店铺 行为次数\n",
    "all_data=most_love_cnt(all_data,'seller_id','seller_id_most_cnt')"
   ],
   "id": "26f27b3d21f420f6",
   "outputs": [],
   "execution_count": 55
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:35:46.322045Z",
     "start_time": "2024-09-19T13:35:30.461782Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最喜欢的类目 行为次数\n",
    "all_data=most_love_cnt(all_data,'cat_id','cat_id_most_cnt')"
   ],
   "id": "5f279aa227c92bb4",
   "outputs": [],
   "execution_count": 56
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:03.412724Z",
     "start_time": "2024-09-19T13:35:46.323030Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最喜欢的品牌 行为次数\n",
    "all_data=most_love_cnt(all_data,'brand_id','brand_id_most_cnt')"
   ],
   "id": "6631b1a206cd31a7",
   "outputs": [],
   "execution_count": 57
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:16.437395Z",
     "start_time": "2024-09-19T13:36:03.413721Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 最常见的行为动作 行为次数\n",
    "all_data=most_love_cnt(all_data,'action_type','action_type_most_cnt')"
   ],
   "id": "e058b6dbdb131949",
   "outputs": [],
   "execution_count": 58
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:16.449847Z",
     "start_time": "2024-09-19T13:36:16.438363Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.head()",
   "id": "3aee2eb156cea58b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   user_id  merchant_id  label  target  age_range  gender  sell_sum  \\\n",
       "0    34176         3906    0.0       1        6.0     0.0       451   \n",
       "1    34176          121    0.0       1        6.0     0.0       451   \n",
       "2    34176         4356    1.0       1        6.0     0.0       451   \n",
       "3    34176         2217    0.0       1        6.0     0.0       451   \n",
       "4   230784         4818    0.0       1        0.0     0.0        54   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  ...  time_stamp_unique  \\\n",
       "0               109             45              106  ...                 47   \n",
       "1               109             45              106  ...                 47   \n",
       "2               109             45              106  ...                 47   \n",
       "3               109             45              106  ...                 47   \n",
       "4                20             17               19  ...                 16   \n",
       "\n",
       "   action_type_unique  sell_id_most  cat_id_most  brand_id_most  \\\n",
       "0                   3           331          662         4094.0   \n",
       "1                   3           331          662         4094.0   \n",
       "2                   3           331          662         4094.0   \n",
       "3                   3           331          662         4094.0   \n",
       "4                   2          3556          407         1236.0   \n",
       "\n",
       "   action_type_most  seller_id_most_cnt  cat_id_most_cnt  brand_id_most_cnt  \\\n",
       "0                 0                  70               98                 70   \n",
       "1                 0                  70               98                 70   \n",
       "2                 0                  70               98                 70   \n",
       "3                 0                  70               98                 70   \n",
       "4                 0                  10                9                 10   \n",
       "\n",
       "   action_type_most_cnt  \n",
       "0                   410  \n",
       "1                   410  \n",
       "2                   410  \n",
       "3                   410  \n",
       "4                    47  \n",
       "\n",
       "[5 rows x 21 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>time_stamp_unique</th>\n",
       "      <th>action_type_unique</th>\n",
       "      <th>sell_id_most</th>\n",
       "      <th>cat_id_most</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176</td>\n",
       "      <td>3906</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>...</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "      <td>70</td>\n",
       "      <td>98</td>\n",
       "      <td>70</td>\n",
       "      <td>410</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176</td>\n",
       "      <td>121</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>...</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "      <td>70</td>\n",
       "      <td>98</td>\n",
       "      <td>70</td>\n",
       "      <td>410</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176</td>\n",
       "      <td>4356</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>...</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "      <td>70</td>\n",
       "      <td>98</td>\n",
       "      <td>70</td>\n",
       "      <td>410</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176</td>\n",
       "      <td>2217</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451</td>\n",
       "      <td>109</td>\n",
       "      <td>45</td>\n",
       "      <td>106</td>\n",
       "      <td>...</td>\n",
       "      <td>47</td>\n",
       "      <td>3</td>\n",
       "      <td>331</td>\n",
       "      <td>662</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0</td>\n",
       "      <td>70</td>\n",
       "      <td>98</td>\n",
       "      <td>70</td>\n",
       "      <td>410</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784</td>\n",
       "      <td>4818</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54</td>\n",
       "      <td>20</td>\n",
       "      <td>17</td>\n",
       "      <td>19</td>\n",
       "      <td>...</td>\n",
       "      <td>16</td>\n",
       "      <td>2</td>\n",
       "      <td>3556</td>\n",
       "      <td>407</td>\n",
       "      <td>1236.0</td>\n",
       "      <td>0</td>\n",
       "      <td>10</td>\n",
       "      <td>9</td>\n",
       "      <td>10</td>\n",
       "      <td>47</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 21 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 59
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:16.534850Z",
     "start_time": "2024-09-19T13:36:16.450837Z"
    }
   },
   "cell_type": "code",
   "source": "user_id_union=list(set(all_data['user_id']))",
   "id": "8acb827e08fba3a1",
   "outputs": [],
   "execution_count": 60
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:16.540849Z",
     "start_time": "2024-09-19T13:36:16.535840Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def action_type_select(data,num,new_name):\n",
    "    d=user_log.groupby(['user_id'])['action_type'].apply(lambda x: Counter(x))\n",
    "    e=dict(d)\n",
    "    k=[]\n",
    "    for i in user_id_union:\n",
    "        try: \n",
    "            k.append(e[(i,num)])\n",
    "        except KeyError:\n",
    "            k.append(0) \n",
    "    data3=pd.DataFrame({'user_id':user_id_union,new_name:k})\n",
    "    data_union_2=data.merge(data3,on=['user_id'],how='inner')\n",
    "    return data_union_2"
   ],
   "id": "2cdcf2154c0f72b9",
   "outputs": [],
   "execution_count": 61
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:36:55.242662Z",
     "start_time": "2024-09-19T13:36:16.541829Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 点击次数\n",
    "all_data=action_type_select(all_data,0,'action_type_sum_0')"
   ],
   "id": "dfc7587b78c57516",
   "outputs": [],
   "execution_count": 62
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:37:31.413302Z",
     "start_time": "2024-09-19T13:36:55.243650Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 加购次数\n",
    "all_data=action_type_select(all_data,1,'action_type_sum_1')"
   ],
   "id": "8e4fcccc51b26e91",
   "outputs": [],
   "execution_count": 63
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:38:07.635186Z",
     "start_time": "2024-09-19T13:37:31.414279Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 购买次数\n",
    "all_data=action_type_select(all_data,2,'action_type_sum_2')"
   ],
   "id": "9a9c207ea4dad714",
   "outputs": [],
   "execution_count": 64
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:38:44.085005Z",
     "start_time": "2024-09-19T13:38:07.636178Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 收藏次数\n",
    "all_data=action_type_select(all_data,3,'action_type_sum_2')"
   ],
   "id": "f5e670bd9a8760c5",
   "outputs": [],
   "execution_count": 65
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.548892Z",
     "start_time": "2024-09-19T13:38:44.085987Z"
    }
   },
   "cell_type": "code",
   "source": "all_data=all_data.T.drop_duplicates(keep='first').T",
   "id": "f593866c101f69f3",
   "outputs": [],
   "execution_count": 66
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.565662Z",
     "start_time": "2024-09-19T13:45:09.549891Z"
    }
   },
   "cell_type": "code",
   "source": "all_data.head()",
   "id": "45490adabe533bc4",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    user_id  merchant_id  label  target  age_range  gender  sell_sum  \\\n",
       "0   34176.0       3906.0    0.0     1.0        6.0     0.0     451.0   \n",
       "1   34176.0        121.0    0.0     1.0        6.0     0.0     451.0   \n",
       "2   34176.0       4356.0    1.0     1.0        6.0     0.0     451.0   \n",
       "3   34176.0       2217.0    0.0     1.0        6.0     0.0     451.0   \n",
       "4  230784.0       4818.0    0.0     1.0        0.0     0.0      54.0   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  ...  brand_id_most  \\\n",
       "0             109.0           45.0            106.0  ...         4094.0   \n",
       "1             109.0           45.0            106.0  ...         4094.0   \n",
       "2             109.0           45.0            106.0  ...         4094.0   \n",
       "3             109.0           45.0            106.0  ...         4094.0   \n",
       "4              20.0           17.0             19.0  ...         1236.0   \n",
       "\n",
       "   action_type_most  seller_id_most_cnt  cat_id_most_cnt  brand_id_most_cnt  \\\n",
       "0               0.0                70.0             98.0               70.0   \n",
       "1               0.0                70.0             98.0               70.0   \n",
       "2               0.0                70.0             98.0               70.0   \n",
       "3               0.0                70.0             98.0               70.0   \n",
       "4               0.0                10.0              9.0               10.0   \n",
       "\n",
       "   action_type_most_cnt  action_type_sum_0  action_type_sum_1  \\\n",
       "0                 410.0              410.0                NaN   \n",
       "1                 410.0              410.0                NaN   \n",
       "2                 410.0              410.0                NaN   \n",
       "3                 410.0              410.0                NaN   \n",
       "4                  47.0               47.0                NaN   \n",
       "\n",
       "   action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                 34.0                  7.0  \n",
       "1                 34.0                  7.0  \n",
       "2                 34.0                  7.0  \n",
       "3                 34.0                  7.0  \n",
       "4                  7.0                  NaN  \n",
       "\n",
       "[5 rows x 25 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>target</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "      <th>action_type_sum_0</th>\n",
       "      <th>action_type_sum_1</th>\n",
       "      <th>action_type_sum_2_x</th>\n",
       "      <th>action_type_sum_2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>3906.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>121.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>4356.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>2217.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784.0</td>\n",
       "      <td>4818.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54.0</td>\n",
       "      <td>20.0</td>\n",
       "      <td>17.0</td>\n",
       "      <td>19.0</td>\n",
       "      <td>...</td>\n",
       "      <td>1236.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>9.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>7.0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 25 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 67,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 67
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.642126Z",
     "start_time": "2024-09-19T13:45:09.566655Z"
    }
   },
   "cell_type": "code",
   "source": [
    "train = all_data[all_data['target'] == 1].reset_index(drop = True)\n",
    "test = all_data[all_data['target'] == -1].reset_index(drop = True)"
   ],
   "id": "d27a8499033c987",
   "outputs": [],
   "execution_count": 68
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.683551Z",
     "start_time": "2024-09-19T13:45:09.643110Z"
    }
   },
   "cell_type": "code",
   "source": [
    "train.drop(['target'],axis=1,inplace=True)\n",
    "test.drop(['target'],axis=1,inplace=True)"
   ],
   "id": "d571893afd80a465",
   "outputs": [],
   "execution_count": 69
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.757197Z",
     "start_time": "2024-09-19T13:45:09.684537Z"
    }
   },
   "cell_type": "code",
   "source": "train.fillna(0,inplace=True)",
   "id": "b0b94aba82c7f205",
   "outputs": [],
   "execution_count": 70
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.777168Z",
     "start_time": "2024-09-19T13:45:09.758161Z"
    }
   },
   "cell_type": "code",
   "source": "test.drop(['label'],axis=1,inplace=True)",
   "id": "33fe47cbf9211ddd",
   "outputs": [],
   "execution_count": 71
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.844063Z",
     "start_time": "2024-09-19T13:45:09.778161Z"
    }
   },
   "cell_type": "code",
   "source": "test.fillna(0,inplace=True)",
   "id": "6bfd3875c1114d79",
   "outputs": [],
   "execution_count": 72
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:09.862765Z",
     "start_time": "2024-09-19T13:45:09.845051Z"
    }
   },
   "cell_type": "code",
   "source": "test.head()",
   "id": "a5b61428cf57028a",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    user_id  merchant_id  age_range  gender  sell_sum  seller_id_unique  \\\n",
       "0  163968.0       4605.0        0.0     0.0      81.0              21.0   \n",
       "1  360576.0       1581.0        2.0     2.0      77.0              37.0   \n",
       "2   98688.0       1964.0        6.0     0.0      56.0              22.0   \n",
       "3   98688.0       3645.0        6.0     0.0      56.0              22.0   \n",
       "4  295296.0       3361.0        2.0     1.0     176.0              56.0   \n",
       "\n",
       "   cat_id_unique  brand_id_unique  item_id_unique  time_stamp_unique  ...  \\\n",
       "0           21.0             22.0            34.0               26.0  ...   \n",
       "1           27.0             37.0            65.0               22.0  ...   \n",
       "2           18.0             21.0            25.0               10.0  ...   \n",
       "3           18.0             21.0            25.0               10.0  ...   \n",
       "4           32.0             46.0            85.0               33.0  ...   \n",
       "\n",
       "   brand_id_most  action_type_most  seller_id_most_cnt  cat_id_most_cnt  \\\n",
       "0         7176.0               0.0                22.0             17.0   \n",
       "1         4066.0               0.0                10.0             13.0   \n",
       "2         3636.0               0.0                11.0             11.0   \n",
       "3         3636.0               0.0                11.0             11.0   \n",
       "4          487.0               0.0                50.0             59.0   \n",
       "\n",
       "   brand_id_most_cnt  action_type_most_cnt  action_type_sum_0  \\\n",
       "0               22.0                  63.0               63.0   \n",
       "1               10.0                  71.0               71.0   \n",
       "2               11.0                  51.0               51.0   \n",
       "3               11.0                  51.0               51.0   \n",
       "4               49.0                 162.0              162.0   \n",
       "\n",
       "   action_type_sum_1  action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                0.0                 16.0                  2.0  \n",
       "1                0.0                  6.0                  0.0  \n",
       "2                0.0                  5.0                  0.0  \n",
       "3                0.0                  5.0                  0.0  \n",
       "4                0.0                  7.0                  7.0  \n",
       "\n",
       "[5 rows x 23 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>time_stamp_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "      <th>action_type_sum_0</th>\n",
       "      <th>action_type_sum_1</th>\n",
       "      <th>action_type_sum_2_x</th>\n",
       "      <th>action_type_sum_2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>163968.0</td>\n",
       "      <td>4605.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>81.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>26.0</td>\n",
       "      <td>...</td>\n",
       "      <td>7176.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>17.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>63.0</td>\n",
       "      <td>63.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>16.0</td>\n",
       "      <td>2.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>360576.0</td>\n",
       "      <td>1581.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>77.0</td>\n",
       "      <td>37.0</td>\n",
       "      <td>27.0</td>\n",
       "      <td>37.0</td>\n",
       "      <td>65.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4066.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>13.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>71.0</td>\n",
       "      <td>71.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>98688.0</td>\n",
       "      <td>1964.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>18.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>25.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>...</td>\n",
       "      <td>3636.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>98688.0</td>\n",
       "      <td>3645.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>18.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>25.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>...</td>\n",
       "      <td>3636.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>295296.0</td>\n",
       "      <td>3361.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>176.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>32.0</td>\n",
       "      <td>46.0</td>\n",
       "      <td>85.0</td>\n",
       "      <td>33.0</td>\n",
       "      <td>...</td>\n",
       "      <td>487.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>50.0</td>\n",
       "      <td>59.0</td>\n",
       "      <td>49.0</td>\n",
       "      <td>162.0</td>\n",
       "      <td>162.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 23 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 73,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 73
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:15.001359Z",
     "start_time": "2024-09-19T13:45:09.863757Z"
    }
   },
   "cell_type": "code",
   "source": [
    "train.to_csv('train_all_k.csv',header=True,index=False)\n",
    "test.to_csv('test_all_k.csv',header=True,index=False)"
   ],
   "id": "e0b4b36d7628690f",
   "outputs": [],
   "execution_count": 74
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:15.374889Z",
     "start_time": "2024-09-19T13:45:15.002356Z"
    }
   },
   "cell_type": "code",
   "source": "pd.read_csv('train_all_k.csv').head()",
   "id": "bc914db741a4205a",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    user_id  merchant_id  label  age_range  gender  sell_sum  \\\n",
       "0   34176.0       3906.0    0.0        6.0     0.0     451.0   \n",
       "1   34176.0        121.0    0.0        6.0     0.0     451.0   \n",
       "2   34176.0       4356.0    1.0        6.0     0.0     451.0   \n",
       "3   34176.0       2217.0    0.0        6.0     0.0     451.0   \n",
       "4  230784.0       4818.0    0.0        0.0     0.0      54.0   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  item_id_unique  ...  \\\n",
       "0             109.0           45.0            106.0           256.0  ...   \n",
       "1             109.0           45.0            106.0           256.0  ...   \n",
       "2             109.0           45.0            106.0           256.0  ...   \n",
       "3             109.0           45.0            106.0           256.0  ...   \n",
       "4              20.0           17.0             19.0            31.0  ...   \n",
       "\n",
       "   brand_id_most  action_type_most  seller_id_most_cnt  cat_id_most_cnt  \\\n",
       "0         4094.0               0.0                70.0             98.0   \n",
       "1         4094.0               0.0                70.0             98.0   \n",
       "2         4094.0               0.0                70.0             98.0   \n",
       "3         4094.0               0.0                70.0             98.0   \n",
       "4         1236.0               0.0                10.0              9.0   \n",
       "\n",
       "   brand_id_most_cnt  action_type_most_cnt  action_type_sum_0  \\\n",
       "0               70.0                 410.0              410.0   \n",
       "1               70.0                 410.0              410.0   \n",
       "2               70.0                 410.0              410.0   \n",
       "3               70.0                 410.0              410.0   \n",
       "4               10.0                  47.0               47.0   \n",
       "\n",
       "   action_type_sum_1  action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                0.0                 34.0                  7.0  \n",
       "1                0.0                 34.0                  7.0  \n",
       "2                0.0                 34.0                  7.0  \n",
       "3                0.0                 34.0                  7.0  \n",
       "4                0.0                  7.0                  0.0  \n",
       "\n",
       "[5 rows x 24 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "      <th>action_type_sum_0</th>\n",
       "      <th>action_type_sum_1</th>\n",
       "      <th>action_type_sum_2_x</th>\n",
       "      <th>action_type_sum_2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>3906.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>121.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>4356.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>2217.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784.0</td>\n",
       "      <td>4818.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54.0</td>\n",
       "      <td>20.0</td>\n",
       "      <td>17.0</td>\n",
       "      <td>19.0</td>\n",
       "      <td>31.0</td>\n",
       "      <td>...</td>\n",
       "      <td>1236.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>9.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 24 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 75
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "建模",
   "id": "25a4641174734dc0"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:15.797110Z",
     "start_time": "2024-09-19T13:45:15.375875Z"
    }
   },
   "cell_type": "code",
   "source": [
    "train_data=pd.read_csv('train_all_k.csv')\n",
    "train_data.head()"
   ],
   "id": "10a50754e0e31f1c",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    user_id  merchant_id  label  age_range  gender  sell_sum  \\\n",
       "0   34176.0       3906.0    0.0        6.0     0.0     451.0   \n",
       "1   34176.0        121.0    0.0        6.0     0.0     451.0   \n",
       "2   34176.0       4356.0    1.0        6.0     0.0     451.0   \n",
       "3   34176.0       2217.0    0.0        6.0     0.0     451.0   \n",
       "4  230784.0       4818.0    0.0        0.0     0.0      54.0   \n",
       "\n",
       "   seller_id_unique  cat_id_unique  brand_id_unique  item_id_unique  ...  \\\n",
       "0             109.0           45.0            106.0           256.0  ...   \n",
       "1             109.0           45.0            106.0           256.0  ...   \n",
       "2             109.0           45.0            106.0           256.0  ...   \n",
       "3             109.0           45.0            106.0           256.0  ...   \n",
       "4              20.0           17.0             19.0            31.0  ...   \n",
       "\n",
       "   brand_id_most  action_type_most  seller_id_most_cnt  cat_id_most_cnt  \\\n",
       "0         4094.0               0.0                70.0             98.0   \n",
       "1         4094.0               0.0                70.0             98.0   \n",
       "2         4094.0               0.0                70.0             98.0   \n",
       "3         4094.0               0.0                70.0             98.0   \n",
       "4         1236.0               0.0                10.0              9.0   \n",
       "\n",
       "   brand_id_most_cnt  action_type_most_cnt  action_type_sum_0  \\\n",
       "0               70.0                 410.0              410.0   \n",
       "1               70.0                 410.0              410.0   \n",
       "2               70.0                 410.0              410.0   \n",
       "3               70.0                 410.0              410.0   \n",
       "4               10.0                  47.0               47.0   \n",
       "\n",
       "   action_type_sum_1  action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                0.0                 34.0                  7.0  \n",
       "1                0.0                 34.0                  7.0  \n",
       "2                0.0                 34.0                  7.0  \n",
       "3                0.0                 34.0                  7.0  \n",
       "4                0.0                  7.0                  0.0  \n",
       "\n",
       "[5 rows x 24 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>label</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "      <th>action_type_sum_0</th>\n",
       "      <th>action_type_sum_1</th>\n",
       "      <th>action_type_sum_2_x</th>\n",
       "      <th>action_type_sum_2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>3906.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>121.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>4356.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>34176.0</td>\n",
       "      <td>2217.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>451.0</td>\n",
       "      <td>109.0</td>\n",
       "      <td>45.0</td>\n",
       "      <td>106.0</td>\n",
       "      <td>256.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4094.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>98.0</td>\n",
       "      <td>70.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>410.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>230784.0</td>\n",
       "      <td>4818.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>54.0</td>\n",
       "      <td>20.0</td>\n",
       "      <td>17.0</td>\n",
       "      <td>19.0</td>\n",
       "      <td>31.0</td>\n",
       "      <td>...</td>\n",
       "      <td>1236.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>9.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>47.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 24 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 76,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 76
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:16.162170Z",
     "start_time": "2024-09-19T13:45:15.798102Z"
    }
   },
   "cell_type": "code",
   "source": [
    "test_data=pd.read_csv('test_all_k.csv')\n",
    "test_data.head()"
   ],
   "id": "1db97c68aa1d84c9",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    user_id  merchant_id  age_range  gender  sell_sum  seller_id_unique  \\\n",
       "0  163968.0       4605.0        0.0     0.0      81.0              21.0   \n",
       "1  360576.0       1581.0        2.0     2.0      77.0              37.0   \n",
       "2   98688.0       1964.0        6.0     0.0      56.0              22.0   \n",
       "3   98688.0       3645.0        6.0     0.0      56.0              22.0   \n",
       "4  295296.0       3361.0        2.0     1.0     176.0              56.0   \n",
       "\n",
       "   cat_id_unique  brand_id_unique  item_id_unique  time_stamp_unique  ...  \\\n",
       "0           21.0             22.0            34.0               26.0  ...   \n",
       "1           27.0             37.0            65.0               22.0  ...   \n",
       "2           18.0             21.0            25.0               10.0  ...   \n",
       "3           18.0             21.0            25.0               10.0  ...   \n",
       "4           32.0             46.0            85.0               33.0  ...   \n",
       "\n",
       "   brand_id_most  action_type_most  seller_id_most_cnt  cat_id_most_cnt  \\\n",
       "0         7176.0               0.0                22.0             17.0   \n",
       "1         4066.0               0.0                10.0             13.0   \n",
       "2         3636.0               0.0                11.0             11.0   \n",
       "3         3636.0               0.0                11.0             11.0   \n",
       "4          487.0               0.0                50.0             59.0   \n",
       "\n",
       "   brand_id_most_cnt  action_type_most_cnt  action_type_sum_0  \\\n",
       "0               22.0                  63.0               63.0   \n",
       "1               10.0                  71.0               71.0   \n",
       "2               11.0                  51.0               51.0   \n",
       "3               11.0                  51.0               51.0   \n",
       "4               49.0                 162.0              162.0   \n",
       "\n",
       "   action_type_sum_1  action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                0.0                 16.0                  2.0  \n",
       "1                0.0                  6.0                  0.0  \n",
       "2                0.0                  5.0                  0.0  \n",
       "3                0.0                  5.0                  0.0  \n",
       "4                0.0                  7.0                  7.0  \n",
       "\n",
       "[5 rows x 23 columns]"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>merchant_id</th>\n",
       "      <th>age_range</th>\n",
       "      <th>gender</th>\n",
       "      <th>sell_sum</th>\n",
       "      <th>seller_id_unique</th>\n",
       "      <th>cat_id_unique</th>\n",
       "      <th>brand_id_unique</th>\n",
       "      <th>item_id_unique</th>\n",
       "      <th>time_stamp_unique</th>\n",
       "      <th>...</th>\n",
       "      <th>brand_id_most</th>\n",
       "      <th>action_type_most</th>\n",
       "      <th>seller_id_most_cnt</th>\n",
       "      <th>cat_id_most_cnt</th>\n",
       "      <th>brand_id_most_cnt</th>\n",
       "      <th>action_type_most_cnt</th>\n",
       "      <th>action_type_sum_0</th>\n",
       "      <th>action_type_sum_1</th>\n",
       "      <th>action_type_sum_2_x</th>\n",
       "      <th>action_type_sum_2_y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>163968.0</td>\n",
       "      <td>4605.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>81.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>34.0</td>\n",
       "      <td>26.0</td>\n",
       "      <td>...</td>\n",
       "      <td>7176.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>17.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>63.0</td>\n",
       "      <td>63.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>16.0</td>\n",
       "      <td>2.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>360576.0</td>\n",
       "      <td>1581.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>77.0</td>\n",
       "      <td>37.0</td>\n",
       "      <td>27.0</td>\n",
       "      <td>37.0</td>\n",
       "      <td>65.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>...</td>\n",
       "      <td>4066.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>13.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>71.0</td>\n",
       "      <td>71.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>98688.0</td>\n",
       "      <td>1964.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>18.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>25.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>...</td>\n",
       "      <td>3636.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>98688.0</td>\n",
       "      <td>3645.0</td>\n",
       "      <td>6.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>22.0</td>\n",
       "      <td>18.0</td>\n",
       "      <td>21.0</td>\n",
       "      <td>25.0</td>\n",
       "      <td>10.0</td>\n",
       "      <td>...</td>\n",
       "      <td>3636.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>11.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>51.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>5.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>295296.0</td>\n",
       "      <td>3361.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>176.0</td>\n",
       "      <td>56.0</td>\n",
       "      <td>32.0</td>\n",
       "      <td>46.0</td>\n",
       "      <td>85.0</td>\n",
       "      <td>33.0</td>\n",
       "      <td>...</td>\n",
       "      <td>487.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>50.0</td>\n",
       "      <td>59.0</td>\n",
       "      <td>49.0</td>\n",
       "      <td>162.0</td>\n",
       "      <td>162.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.0</td>\n",
       "      <td>7.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>5 rows × 23 columns</p>\n",
       "</div>"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 77
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:16.168902Z",
     "start_time": "2024-09-19T13:45:16.162170Z"
    }
   },
   "cell_type": "code",
   "source": "train_data['label'].value_counts()",
   "id": "a80e0a790543e780",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.0    241303\n",
       "1.0     15838\n",
       "Name: label, dtype: int64"
      ]
     },
     "execution_count": 78,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 78
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:16.239390Z",
     "start_time": "2024-09-19T13:45:16.168902Z"
    }
   },
   "cell_type": "code",
   "source": [
    "target = train_data['label']\n",
    "target.head\n",
    "train.fillna(0,inplace=True)\n",
    "train_data.drop(['label'],axis=1,inplace=True)\n",
    "train_data.drop(['user_id'],axis=1,inplace=True)\n",
    "train_data.drop(['merchant_id'],axis=1,inplace=True)\n",
    "train_data.head"
   ],
   "id": "a964458a9449a653",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<bound method NDFrame.head of         age_range  gender  sell_sum  seller_id_unique  cat_id_unique  \\\n",
       "0             6.0     0.0     451.0             109.0           45.0   \n",
       "1             6.0     0.0     451.0             109.0           45.0   \n",
       "2             6.0     0.0     451.0             109.0           45.0   \n",
       "3             6.0     0.0     451.0             109.0           45.0   \n",
       "4             0.0     0.0      54.0              20.0           17.0   \n",
       "...           ...     ...       ...               ...            ...   \n",
       "257136        4.0     1.0     117.0              33.0           25.0   \n",
       "257137        0.0     1.0     198.0              38.0           20.0   \n",
       "257138        0.0     1.0     198.0              38.0           20.0   \n",
       "257139        0.0     1.0     198.0              38.0           20.0   \n",
       "257140        4.0     2.0     194.0              50.0           29.0   \n",
       "\n",
       "        brand_id_unique  item_id_unique  time_stamp_unique  \\\n",
       "0                 106.0           256.0               47.0   \n",
       "1                 106.0           256.0               47.0   \n",
       "2                 106.0           256.0               47.0   \n",
       "3                 106.0           256.0               47.0   \n",
       "4                  19.0            31.0               16.0   \n",
       "...                 ...             ...                ...   \n",
       "257136             32.0            49.0               12.0   \n",
       "257137             36.0            89.0                6.0   \n",
       "257138             36.0            89.0                6.0   \n",
       "257139             36.0            89.0                6.0   \n",
       "257140             49.0           127.0               23.0   \n",
       "\n",
       "        action_type_unique  sell_id_most  ...  brand_id_most  \\\n",
       "0                      3.0         331.0  ...         4094.0   \n",
       "1                      3.0         331.0  ...         4094.0   \n",
       "2                      3.0         331.0  ...         4094.0   \n",
       "3                      3.0         331.0  ...         4094.0   \n",
       "4                      2.0        3556.0  ...         1236.0   \n",
       "...                    ...           ...  ...            ...   \n",
       "257136                 3.0         100.0  ...         2276.0   \n",
       "257137                 3.0        4976.0  ...         6144.0   \n",
       "257138                 3.0        4976.0  ...         6144.0   \n",
       "257139                 3.0        4976.0  ...         6144.0   \n",
       "257140                 3.0        4140.0  ...         5696.0   \n",
       "\n",
       "        action_type_most  seller_id_most_cnt  cat_id_most_cnt  \\\n",
       "0                    0.0                70.0             98.0   \n",
       "1                    0.0                70.0             98.0   \n",
       "2                    0.0                70.0             98.0   \n",
       "3                    0.0                70.0             98.0   \n",
       "4                    0.0                10.0              9.0   \n",
       "...                  ...                 ...              ...   \n",
       "257136               0.0                22.0             15.0   \n",
       "257137               0.0                28.0             38.0   \n",
       "257138               0.0                28.0             38.0   \n",
       "257139               0.0                28.0             38.0   \n",
       "257140               0.0                24.0             33.0   \n",
       "\n",
       "        brand_id_most_cnt  action_type_most_cnt  action_type_sum_0  \\\n",
       "0                    70.0                 410.0              410.0   \n",
       "1                    70.0                 410.0              410.0   \n",
       "2                    70.0                 410.0              410.0   \n",
       "3                    70.0                 410.0              410.0   \n",
       "4                    10.0                  47.0               47.0   \n",
       "...                   ...                   ...                ...   \n",
       "257136               25.0                 107.0              107.0   \n",
       "257137               28.0                 162.0              162.0   \n",
       "257138               28.0                 162.0              162.0   \n",
       "257139               28.0                 162.0              162.0   \n",
       "257140               24.0                 181.0              181.0   \n",
       "\n",
       "        action_type_sum_1  action_type_sum_2_x  action_type_sum_2_y  \n",
       "0                     0.0                 34.0                  7.0  \n",
       "1                     0.0                 34.0                  7.0  \n",
       "2                     0.0                 34.0                  7.0  \n",
       "3                     0.0                 34.0                  7.0  \n",
       "4                     0.0                  7.0                  0.0  \n",
       "...                   ...                  ...                  ...  \n",
       "257136                0.0                  9.0                  1.0  \n",
       "257137                0.0                  5.0                 31.0  \n",
       "257138                0.0                  5.0                 31.0  \n",
       "257139                0.0                  5.0                 31.0  \n",
       "257140                0.0                  9.0                  4.0  \n",
       "\n",
       "[257141 rows x 21 columns]>"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 79
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "不同模型",
   "id": "fc262fc699394882"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:18.192069Z",
     "start_time": "2024-09-19T13:45:16.240373Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from sklearn.linear_model import LinearRegression\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.neighbors import KNeighborsClassifier\n",
    "from sklearn.naive_bayes import GaussianNB\n",
    "from sklearn.model_selection import cross_val_score\n",
    "from sklearn import tree\n",
    "from sklearn.ensemble import BaggingClassifier\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.ensemble import ExtraTreesClassifier\n",
    "from sklearn.ensemble import AdaBoostClassifier\n",
    "from sklearn.ensemble import GradientBoostingClassifier\n",
    "from imblearn.over_sampling import SMOTE\n",
    "from functools import partial\n",
    "\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "from sklearn.model_selection import StratifiedKFold\n",
    "from sklearn.model_selection import learning_curve\n",
    "from sklearn.ensemble import VotingClassifier\n",
    "from sklearn.feature_selection import SelectKBest\n",
    "# from sklearn.feature_selection import chi2\n",
    "from sklearn.feature_selection import mutual_info_classif\n",
    "import lightgbm\n",
    "from xgboost import XGBClassifier\n",
    "import xgboost as xgb\n",
    "\n",
    "from sklearn import metrics\n",
    "from sklearn.metrics import roc_auc_score, roc_curve, accuracy_score, confusion_matrix, log_loss, auc, \\\n",
    "    precision_recall_curve\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n"
   ],
   "id": "7e335bbfbd7cc42",
   "outputs": [],
   "execution_count": 80
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:18.196747Z",
     "start_time": "2024-09-19T13:45:18.193047Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def model_clf(model):\n",
    "    model.fit(X_train, y_train)\n",
    "    y_train_pred = model.predict_proba(X_train)\n",
    "    y_train_pred_pos = y_train_pred[:,1]\n",
    "\n",
    "    y_test_pred = model.predict_proba(X_test)\n",
    "    y_test_pred_pos = y_test_pred[:,1]\n",
    "\n",
    "    auc_train = roc_auc_score(y_train, y_train_pred_pos)#AUC评分\n",
    "    auc_test = roc_auc_score(y_test, y_test_pred_pos)\n",
    "\n",
    "    print(f\"Train AUC Score {auc_train}\")\n",
    "    print(f\"Test AUC Score {auc_test}\")\n",
    "\n",
    "    fpr, tpr, _ = roc_curve(y_test,y_test_pred_pos)#绘制ROC曲线\n",
    "    return fpr,tpr"
   ],
   "id": "73aa52d1e0fe9751",
   "outputs": [],
   "execution_count": 81
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "GaussianNB 模型\n",
   "id": "2a774f744d594654"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:18.583293Z",
     "start_time": "2024-09-19T13:45:18.196747Z"
    }
   },
   "cell_type": "code",
   "source": [
    "stdScaler = StandardScaler()\n",
    "X = stdScaler.fit_transform(train_data)\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, target, random_state=0)\n",
    "clf = GaussianNB()\n",
    "model_clf(clf)"
   ],
   "id": "b3ef21f8b952c14e",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train AUC Score 0.560347058613604\n",
      "Test AUC Score 0.5555306340529743\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(array([0.        , 0.00501498, 0.00508118, ..., 0.99965243, 0.99968553,\n",
       "        1.        ]),\n",
       " array([0.        , 0.00879235, 0.00879235, ..., 1.        , 1.        ,\n",
       "        1.        ]))"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 82
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "随机森林",
   "id": "2ea304df92eb31ea"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-09-19T13:45:19.523776Z",
     "start_time": "2024-09-19T13:45:18.584294Z"
    }
   },
   "cell_type": "code",
   "source": [
    "X_train, X_test, y_train, y_test = train_test_split(train_data, target, random_state=0)\n",
    "clf = RandomForestClassifier(n_estimators=10, max_depth=3, min_samples_split=12, random_state=0)\n",
    "model_clf(clf)"
   ],
   "id": "cb8310074e7f9b54",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train AUC Score 0.580717915119356\n",
      "Test AUC Score 0.5708682145736065\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(array([0.00000000e+00, 1.65510849e-05, 1.65510849e-05, ...,\n",
       "        9.99751734e-01, 9.99933796e-01, 1.00000000e+00]),\n",
       " array([0.00000000e+00, 0.00000000e+00, 2.58598397e-04, ...,\n",
       "        1.00000000e+00, 1.00000000e+00, 1.00000000e+00]))"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 83
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
